home *** CD-ROM | disk | FTP | other *** search
/ Resource Library: Multimedia / Resource Library: Multimedia.iso / maestro / source / videoedt / videodt_.c < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-15  |  62.2 KB  |  2,439 lines

  1. /*
  2.  * VideoEdit_ui.c - User interface object initialization functions.
  3.  * This file was generated by `gxv' from `VideoEdit.G'.
  4.  * DO NOT EDIT BY HAND.
  5.  */
  6.  
  7. #include <stdio.h>
  8. #include <sys/param.h>
  9. #include <sys/types.h>
  10. #include <xview/xview.h>
  11. #include <xview/canvas.h>
  12. #include <xview/panel.h>
  13. #include <xview/scrollbar.h>
  14. #include <xview/svrimage.h>
  15. #include <xview/termsw.h>
  16. #include <xview/text.h>
  17. #include <xview/tty.h>
  18. #include <xview/xv_xrect.h>
  19. #include <gcm.h>
  20. #include "VideoEdit_ui.h"
  21.  
  22. /*
  23.  * Create object `previewMenu' in the specified instance.
  24.  */
  25. Xv_opaque
  26. VideoEdit_previewMenu_create(caddr_t ip, Xv_opaque owner)
  27. {
  28.     extern Menu_item    PreviewStartEnd(Menu_item, Menu_generate);
  29.     extern Menu_item    EditPreview(Menu_item, Menu_generate);
  30.     Xv_opaque    obj;
  31.     
  32.     obj = xv_create(XV_NULL, MENU_COMMAND_MENU,
  33.         XV_KEY_DATA, INSTANCE, ip,
  34.         MENU_TITLE_ITEM, "Video Preview",
  35.         MENU_ITEM,
  36.             XV_KEY_DATA, INSTANCE, ip,
  37.             MENU_STRING, "Play entire edit",
  38.             MENU_GEN_PROC, PreviewStartEnd,
  39.             NULL,
  40.         MENU_ITEM,
  41.             XV_KEY_DATA, INSTANCE, ip,
  42.             MENU_STRING, "Play part of edit...",
  43.             MENU_GEN_PROC, EditPreview,
  44.             NULL,
  45.         MENU_DEFAULT, 2,
  46.         MENU_GEN_PIN_WINDOW, owner, "Video Preview",
  47.         NULL);
  48.     return obj;
  49. }
  50.  
  51. /*
  52.  * Create object `editAudioMenu' in the specified instance.
  53.  */
  54. Xv_opaque
  55. VideoEdit_editAudioMenu_create(caddr_t ip, Xv_opaque owner)
  56. {
  57.     extern Menu_item    EditAudioStereo(Menu_item, Menu_generate);
  58.     extern Menu_item    EditAudioRight(Menu_item, Menu_generate);
  59.     extern Menu_item    EditAudioLeft(Menu_item, Menu_generate);
  60.     extern Menu_item    EditAudioMute(Menu_item, Menu_generate);
  61.     Xv_opaque    obj;
  62.     
  63.     obj = xv_create(XV_NULL, MENU_COMMAND_MENU,
  64.         XV_KEY_DATA, INSTANCE, ip,
  65.         MENU_TITLE_ITEM, "Stereo",
  66.         MENU_ITEM,
  67.             XV_KEY_DATA, INSTANCE, ip,
  68.             MENU_STRING, "Stereo",
  69.             MENU_GEN_PROC, EditAudioStereo,
  70.             NULL,
  71.         MENU_ITEM,
  72.             XV_KEY_DATA, INSTANCE, ip,
  73.             MENU_STRING, "Right",
  74.             MENU_GEN_PROC, EditAudioRight,
  75.             NULL,
  76.         MENU_ITEM,
  77.             XV_KEY_DATA, INSTANCE, ip,
  78.             MENU_STRING, "Left",
  79.             MENU_GEN_PROC, EditAudioLeft,
  80.             NULL,
  81.         MENU_ITEM,
  82.             XV_KEY_DATA, INSTANCE, ip,
  83.             MENU_STRING, "Mute",
  84.             MENU_GEN_PROC, EditAudioMute,
  85.             NULL,
  86.         MENU_DEFAULT, 2,
  87.         MENU_GEN_PIN_WINDOW, owner, "Stereo",
  88.         NULL);
  89.     return obj;
  90. }
  91.  
  92. /*
  93.  * Create object `DocMenu' in the specified instance.
  94.  */
  95. Xv_opaque
  96. VideoEdit_DocMenu_create(caddr_t ip, Xv_opaque owner)
  97. {
  98.     extern Menu_item    FileLoad(Menu_item, Menu_generate);
  99.     extern Menu_item    FileSave(Menu_item, Menu_generate);
  100.     extern Menu_item    FileSaveAs(Menu_item, Menu_generate);
  101.     extern Menu_item    EditCloseFile(Menu_item, Menu_generate);
  102.     extern Menu_item    EditCloseWindow(Menu_item, Menu_generate);
  103.     Xv_opaque    obj;
  104.     
  105.     obj = xv_create(XV_NULL, MENU_COMMAND_MENU,
  106.         XV_KEY_DATA, INSTANCE, ip,
  107.         MENU_ITEM,
  108.             XV_KEY_DATA, INSTANCE, ip,
  109.             MENU_STRING, "Open",
  110.             MENU_GEN_PROC, FileLoad,
  111.             NULL,
  112.         MENU_ITEM,
  113.             XV_KEY_DATA, INSTANCE, ip,
  114.             MENU_STRING, "Save",
  115.             MENU_GEN_PROC, FileSave,
  116.             NULL,
  117.         MENU_ITEM,
  118.             XV_KEY_DATA, INSTANCE, ip,
  119.             MENU_STRING, "Save As...",
  120.             MENU_GEN_PROC, FileSaveAs,
  121.             NULL,
  122.         MENU_ITEM,
  123.             XV_KEY_DATA, INSTANCE, ip,
  124.             MENU_STRING, "Close File",
  125.             MENU_GEN_PROC, EditCloseFile,
  126.             NULL,
  127.         MENU_ITEM,
  128.             XV_KEY_DATA, INSTANCE, ip,
  129.             MENU_STRING, "Close Window",
  130.             MENU_GEN_PROC, EditCloseWindow,
  131.             NULL,
  132.         MENU_GEN_PIN_WINDOW, owner, "",
  133.         NULL);
  134.     return obj;
  135. }
  136.  
  137. /*
  138.  * Initialize an instance of object `window1'.
  139.  */
  140. VideoEdit_window1_objects *
  141. VideoEdit_window1_objects_initialize(VideoEdit_window1_objects *ip, Xv_opaque owner)
  142. {
  143.     if (!ip && !(ip = (VideoEdit_window1_objects *) calloc(1, sizeof (VideoEdit_window1_objects))))
  144.         return (VideoEdit_window1_objects *) NULL;
  145.     if (!ip->window1)
  146.         ip->window1 = VideoEdit_window1_window1_create(ip, owner);
  147.     if (!ip->remoteCtrlControls)
  148.         ip->remoteCtrlControls = VideoEdit_window1_remoteCtrlControls_create(ip, ip->window1);
  149.     if (!ip->optionsButton)
  150.         ip->optionsButton = VideoEdit_window1_optionsButton_create(ip, ip->remoteCtrlControls);
  151.     if (!ip->editButton)
  152.         ip->editButton = VideoEdit_window1_editButton_create(ip, ip->remoteCtrlControls);
  153.     if (!ip->quitButton)
  154.         ip->quitButton = VideoEdit_window1_quitButton_create(ip, ip->remoteCtrlControls);
  155.     if (!ip->frameTxt)
  156.         ip->frameTxt = VideoEdit_window1_frameTxt_create(ip, ip->remoteCtrlControls);
  157.     if (!ip->Num1)
  158.         ip->Num1 = VideoEdit_window1_Num1_create(ip, ip->remoteCtrlControls);
  159.     if (!ip->Num2)
  160.         ip->Num2 = VideoEdit_window1_Num2_create(ip, ip->remoteCtrlControls);
  161.     if (!ip->Num3)
  162.         ip->Num3 = VideoEdit_window1_Num3_create(ip, ip->remoteCtrlControls);
  163.     if (!ip->Num4)
  164.         ip->Num4 = VideoEdit_window1_Num4_create(ip, ip->remoteCtrlControls);
  165.     if (!ip->Num5)
  166.         ip->Num5 = VideoEdit_window1_Num5_create(ip, ip->remoteCtrlControls);
  167.     if (!ip->Num6)
  168.         ip->Num6 = VideoEdit_window1_Num6_create(ip, ip->remoteCtrlControls);
  169.     if (!ip->Num7)
  170.         ip->Num7 = VideoEdit_window1_Num7_create(ip, ip->remoteCtrlControls);
  171.     if (!ip->Num8)
  172.         ip->Num8 = VideoEdit_window1_Num8_create(ip, ip->remoteCtrlControls);
  173.     if (!ip->Num9)
  174.         ip->Num9 = VideoEdit_window1_Num9_create(ip, ip->remoteCtrlControls);
  175.     if (!ip->searchButton)
  176.         ip->searchButton = VideoEdit_window1_searchButton_create(ip, ip->remoteCtrlControls);
  177.     if (!ip->Num0)
  178.         ip->Num0 = VideoEdit_window1_Num0_create(ip, ip->remoteCtrlControls);
  179.     if (!ip->currFrameButton)
  180.         ip->currFrameButton = VideoEdit_window1_currFrameButton_create(ip, ip->remoteCtrlControls);
  181.     if (!ip->remoteIconControls)
  182.         ip->remoteIconControls = VideoEdit_window1_remoteIconControls_create(ip, ip->window1);
  183.     if (!ip->pauseButton)
  184.         ip->pauseButton = VideoEdit_window1_pauseButton_create(ip, ip->remoteIconControls);
  185.     if (!ip->playButton)
  186.         ip->playButton = VideoEdit_window1_playButton_create(ip, ip->remoteIconControls);
  187.     if (!ip->stopButton)
  188.         ip->stopButton = VideoEdit_window1_stopButton_create(ip, ip->remoteIconControls);
  189.     if (!ip->scanRevButton)
  190.         ip->scanRevButton = VideoEdit_window1_scanRevButton_create(ip, ip->remoteIconControls);
  191.     if (!ip->scanFwdButton)
  192.         ip->scanFwdButton = VideoEdit_window1_scanFwdButton_create(ip, ip->remoteIconControls);
  193.     if (!ip->revSkipButton)
  194.         ip->revSkipButton = VideoEdit_window1_revSkipButton_create(ip, ip->remoteIconControls);
  195.     if (!ip->revStepButton)
  196.         ip->revStepButton = VideoEdit_window1_revStepButton_create(ip, ip->remoteIconControls);
  197.     if (!ip->fwdStepButton)
  198.         ip->fwdStepButton = VideoEdit_window1_fwdStepButton_create(ip, ip->remoteIconControls);
  199.     if (!ip->fwdSkipButton)
  200.         ip->fwdSkipButton = VideoEdit_window1_fwdSkipButton_create(ip, ip->remoteIconControls);
  201.     if (!ip->speedTxt)
  202.         ip->speedTxt = VideoEdit_window1_speedTxt_create(ip, ip->remoteIconControls);
  203.     if (!ip->speedMsg)
  204.         ip->speedMsg = VideoEdit_window1_speedMsg_create(ip, ip->remoteIconControls);
  205.     if (!ip->speedSlider)
  206.         ip->speedSlider = VideoEdit_window1_speedSlider_create(ip, ip->remoteIconControls);
  207.     if (!ip->ejectButton)
  208.         ip->ejectButton = VideoEdit_window1_ejectButton_create(ip, ip->remoteIconControls);
  209.     return ip;
  210. }
  211.  
  212. /*
  213.  * Create object `window1' in the specified instance.
  214.  */
  215. Xv_opaque
  216. VideoEdit_window1_window1_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  217. {
  218.     Xv_opaque    obj;
  219.     Xv_opaque        window1_image;
  220.     static unsigned short    window1_bits[] = {
  221. #include "icons/VideoEditIcon"
  222.     };
  223.     
  224.     window1_image = xv_create(XV_NULL, SERVER_IMAGE,
  225.         SERVER_IMAGE_DEPTH, 1,
  226.         SERVER_IMAGE_BITS, window1_bits,
  227.         XV_WIDTH, 64,
  228.         XV_HEIGHT, 64,
  229.         NULL);
  230.     obj = xv_create(owner, FRAME,
  231.         XV_KEY_DATA, INSTANCE, ip,
  232.         XV_WIDTH, 230,
  233.         XV_HEIGHT, 419,
  234.         XV_LABEL, "Videodisc Remote Controller",
  235.         FRAME_SHOW_FOOTER, TRUE,
  236.         FRAME_SHOW_RESIZE_CORNER, TRUE,
  237.         FRAME_ICON, xv_create(XV_NULL, ICON,
  238.             ICON_IMAGE, window1_image,
  239.             NULL),
  240.         NULL);
  241.     gcm_initialize_colors(obj, "BG1", NULL);
  242.     return obj;
  243. }
  244.  
  245. /*
  246.  * Create object `remoteCtrlControls' in the specified instance.
  247.  */
  248. Xv_opaque
  249. VideoEdit_window1_remoteCtrlControls_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  250. {
  251.     Xv_opaque    obj;
  252.     
  253.     obj = xv_create(owner, PANEL,
  254.         XV_KEY_DATA, INSTANCE, ip,
  255.         XV_X, 0,
  256.         XV_Y, 0,
  257.         XV_WIDTH, WIN_EXTEND_TO_EDGE,
  258.         XV_HEIGHT, 184,
  259.         WIN_BORDER, TRUE,
  260.         NULL);
  261.     gcm_initialize_colors(obj, "BG1", "Black");
  262.     return obj;
  263. }
  264.  
  265. /*
  266.  * Create object `optionsButton' in the specified instance.
  267.  */
  268. Xv_opaque
  269. VideoEdit_window1_optionsButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  270. {
  271.     extern void        Options(Panel_item, Event *);
  272.     Xv_opaque    obj;
  273.     
  274.     obj = xv_create(owner, PANEL_BUTTON,
  275.         XV_KEY_DATA, INSTANCE, ip,
  276.         XV_HELP_DATA, "VideoEdit:optionsButton",
  277.         XV_X, 12,
  278.         XV_Y, 12,
  279.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  280.         PANEL_LABEL_STRING, "Options...",
  281.         PANEL_NOTIFY_PROC, Options,
  282.         NULL);
  283.     return obj;
  284. }
  285.  
  286. /*
  287.  * Create object `editButton' in the specified instance.
  288.  */
  289. Xv_opaque
  290. VideoEdit_window1_editButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  291. {
  292.     extern void        Edit(Panel_item, Event *);
  293.     Xv_opaque    obj;
  294.     
  295.     obj = xv_create(owner, PANEL_BUTTON,
  296.         XV_KEY_DATA, INSTANCE, ip,
  297.         XV_HELP_DATA, "VideoEdit:editButton",
  298.         XV_X, 100,
  299.         XV_Y, 12,
  300.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  301.         PANEL_LABEL_STRING, " Edit...",
  302.         PANEL_NOTIFY_PROC, Edit,
  303.         NULL);
  304.     return obj;
  305. }
  306.  
  307. /*
  308.  * Create object `quitButton' in the specified instance.
  309.  */
  310. Xv_opaque
  311. VideoEdit_window1_quitButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  312. {
  313.     extern void        Quit(Panel_item, Event *);
  314.     Xv_opaque    obj;
  315.     
  316.     obj = xv_create(owner, PANEL_BUTTON,
  317.         XV_KEY_DATA, INSTANCE, ip,
  318.         XV_HELP_DATA, "VideoEdit:quitButton",
  319.         XV_X, 168,
  320.         XV_Y, 12,
  321.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  322.         PANEL_LABEL_STRING, " Quit  ",
  323.         PANEL_NOTIFY_PROC, Quit,
  324.         NULL);
  325.     return obj;
  326. }
  327.  
  328. /*
  329.  * Create object `frameTxt' in the specified instance.
  330.  */
  331. Xv_opaque
  332. VideoEdit_window1_frameTxt_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  333. {
  334.     extern Panel_setting    SearchKbd(Panel_item, Event *);
  335.     Xv_opaque    obj;
  336.     
  337.     obj = xv_create(owner, PANEL_NUMERIC_TEXT,
  338.         XV_KEY_DATA, INSTANCE, ip,
  339.         XV_HELP_DATA, "VideoEdit:frameTxt",
  340.         XV_X, 48,
  341.         XV_Y, 44,
  342.         PANEL_VALUE_DISPLAY_LENGTH, 5,
  343.         PANEL_VALUE_STORED_LENGTH, 5,
  344.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  345.         PANEL_LABEL_STRING, "Frame: ",
  346.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  347.         PANEL_MAX_VALUE, 54000,
  348.         PANEL_MIN_VALUE, 0,
  349.         PANEL_VALUE, 0,
  350.         PANEL_READ_ONLY, FALSE,
  351.         PANEL_NOTIFY_PROC, SearchKbd,
  352.         NULL);
  353.     return obj;
  354. }
  355.  
  356. /*
  357.  * Create object `Num1' in the specified instance.
  358.  */
  359. Xv_opaque
  360. VideoEdit_window1_Num1_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  361. {
  362.     extern void        One(Panel_item, Event *);
  363.     Xv_opaque    obj;
  364.     
  365.     obj = xv_create(owner, PANEL_BUTTON,
  366.         XV_KEY_DATA, INSTANCE, ip,
  367.         XV_X, 16,
  368.         XV_Y, 76,
  369.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  370.         PANEL_LABEL_STRING, "    1    ",
  371.         PANEL_NOTIFY_PROC, One,
  372.         NULL);
  373.     return obj;
  374. }
  375.  
  376. /*
  377.  * Create object `Num2' in the specified instance.
  378.  */
  379. Xv_opaque
  380. VideoEdit_window1_Num2_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  381. {
  382.     extern void        Two(Panel_item, Event *);
  383.     Xv_opaque    obj;
  384.     
  385.     obj = xv_create(owner, PANEL_BUTTON,
  386.         XV_KEY_DATA, INSTANCE, ip,
  387.         XV_X, 88,
  388.         XV_Y, 76,
  389.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  390.         PANEL_LABEL_STRING, "    2    ",
  391.         PANEL_NOTIFY_PROC, Two,
  392.         NULL);
  393.     return obj;
  394. }
  395.  
  396. /*
  397.  * Create object `Num3' in the specified instance.
  398.  */
  399. Xv_opaque
  400. VideoEdit_window1_Num3_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  401. {
  402.     extern void        Three(Panel_item, Event *);
  403.     Xv_opaque    obj;
  404.     
  405.     obj = xv_create(owner, PANEL_BUTTON,
  406.         XV_KEY_DATA, INSTANCE, ip,
  407.         XV_X, 160,
  408.         XV_Y, 76,
  409.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  410.         PANEL_LABEL_STRING, "    3    ",
  411.         PANEL_NOTIFY_PROC, Three,
  412.         NULL);
  413.     return obj;
  414. }
  415.  
  416. /*
  417.  * Create object `Num4' in the specified instance.
  418.  */
  419. Xv_opaque
  420. VideoEdit_window1_Num4_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  421. {
  422.     extern void        Four(Panel_item, Event *);
  423.     Xv_opaque    obj;
  424.     
  425.     obj = xv_create(owner, PANEL_BUTTON,
  426.         XV_KEY_DATA, INSTANCE, ip,
  427.         XV_X, 16,
  428.         XV_Y, 100,
  429.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  430.         PANEL_LABEL_STRING, "    4    ",
  431.         PANEL_NOTIFY_PROC, Four,
  432.         NULL);
  433.     return obj;
  434. }
  435.  
  436. /*
  437.  * Create object `Num5' in the specified instance.
  438.  */
  439. Xv_opaque
  440. VideoEdit_window1_Num5_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  441. {
  442.     extern void        Five(Panel_item, Event *);
  443.     Xv_opaque    obj;
  444.     
  445.     obj = xv_create(owner, PANEL_BUTTON,
  446.         XV_KEY_DATA, INSTANCE, ip,
  447.         XV_X, 88,
  448.         XV_Y, 100,
  449.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  450.         PANEL_LABEL_STRING, "    5    ",
  451.         PANEL_NOTIFY_PROC, Five,
  452.         NULL);
  453.     return obj;
  454. }
  455.  
  456. /*
  457.  * Create object `Num6' in the specified instance.
  458.  */
  459. Xv_opaque
  460. VideoEdit_window1_Num6_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  461. {
  462.     extern void        Six(Panel_item, Event *);
  463.     Xv_opaque    obj;
  464.     
  465.     obj = xv_create(owner, PANEL_BUTTON,
  466.         XV_KEY_DATA, INSTANCE, ip,
  467.         XV_X, 160,
  468.         XV_Y, 100,
  469.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  470.         PANEL_LABEL_STRING, "    6    ",
  471.         PANEL_NOTIFY_PROC, Six,
  472.         NULL);
  473.     return obj;
  474. }
  475.  
  476. /*
  477.  * Create object `Num7' in the specified instance.
  478.  */
  479. Xv_opaque
  480. VideoEdit_window1_Num7_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  481. {
  482.     extern void        Seven(Panel_item, Event *);
  483.     Xv_opaque    obj;
  484.     
  485.     obj = xv_create(owner, PANEL_BUTTON,
  486.         XV_KEY_DATA, INSTANCE, ip,
  487.         XV_X, 16,
  488.         XV_Y, 124,
  489.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  490.         PANEL_LABEL_STRING, "    7    ",
  491.         PANEL_NOTIFY_PROC, Seven,
  492.         NULL);
  493.     return obj;
  494. }
  495.  
  496. /*
  497.  * Create object `Num8' in the specified instance.
  498.  */
  499. Xv_opaque
  500. VideoEdit_window1_Num8_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  501. {
  502.     extern void        Eight(Panel_item, Event *);
  503.     Xv_opaque    obj;
  504.     
  505.     obj = xv_create(owner, PANEL_BUTTON,
  506.         XV_KEY_DATA, INSTANCE, ip,
  507.         XV_X, 88,
  508.         XV_Y, 124,
  509.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  510.         PANEL_LABEL_STRING, "    8    ",
  511.         PANEL_NOTIFY_PROC, Eight,
  512.         NULL);
  513.     return obj;
  514. }
  515.  
  516. /*
  517.  * Create object `Num9' in the specified instance.
  518.  */
  519. Xv_opaque
  520. VideoEdit_window1_Num9_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  521. {
  522.     extern void        Nine(Panel_item, Event *);
  523.     Xv_opaque    obj;
  524.     
  525.     obj = xv_create(owner, PANEL_BUTTON,
  526.         XV_KEY_DATA, INSTANCE, ip,
  527.         XV_X, 160,
  528.         XV_Y, 124,
  529.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  530.         PANEL_LABEL_STRING, "    9    ",
  531.         PANEL_NOTIFY_PROC, Nine,
  532.         NULL);
  533.     return obj;
  534. }
  535.  
  536. /*
  537.  * Create object `searchButton' in the specified instance.
  538.  */
  539. Xv_opaque
  540. VideoEdit_window1_searchButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  541. {
  542.     extern void        Search(Panel_item, Event *);
  543.     Xv_opaque    obj;
  544.     
  545.     obj = xv_create(owner, PANEL_BUTTON,
  546.         XV_KEY_DATA, INSTANCE, ip,
  547.         XV_HELP_DATA, "VideoEdit:searchButton",
  548.         XV_X, 16,
  549.         XV_Y, 148,
  550.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  551.         PANEL_LABEL_STRING, "Search",
  552.         PANEL_NOTIFY_PROC, Search,
  553.         NULL);
  554.     return obj;
  555. }
  556.  
  557. /*
  558.  * Create object `Num0' in the specified instance.
  559.  */
  560. Xv_opaque
  561. VideoEdit_window1_Num0_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  562. {
  563.     extern void        Zero(Panel_item, Event *);
  564.     Xv_opaque    obj;
  565.     
  566.     obj = xv_create(owner, PANEL_BUTTON,
  567.         XV_KEY_DATA, INSTANCE, ip,
  568.         XV_X, 88,
  569.         XV_Y, 148,
  570.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  571.         PANEL_LABEL_STRING, "    0    ",
  572.         PANEL_NOTIFY_PROC, Zero,
  573.         NULL);
  574.     return obj;
  575. }
  576.  
  577. /*
  578.  * Create object `currFrameButton' in the specified instance.
  579.  */
  580. Xv_opaque
  581. VideoEdit_window1_currFrameButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  582. {
  583.     extern void        CurrentFrame(Panel_item, Event *);
  584.     Xv_opaque    obj;
  585.     
  586.     obj = xv_create(owner, PANEL_BUTTON,
  587.         XV_KEY_DATA, INSTANCE, ip,
  588.         XV_HELP_DATA, "VideoEdit:currFrameButton",
  589.         XV_X, 160,
  590.         XV_Y, 148,
  591.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  592.         PANEL_LABEL_STRING, "    ?    ",
  593.         PANEL_NOTIFY_PROC, CurrentFrame,
  594.         NULL);
  595.     return obj;
  596. }
  597.  
  598. /*
  599.  * Create object `remoteIconControls' in the specified instance.
  600.  */
  601. Xv_opaque
  602. VideoEdit_window1_remoteIconControls_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  603. {
  604.     Xv_opaque    obj;
  605.     
  606.     obj = xv_create(owner, PANEL,
  607.         XV_KEY_DATA, INSTANCE, ip,
  608.         XV_X, 0,
  609.         XV_Y, 183,
  610.         XV_WIDTH, WIN_EXTEND_TO_EDGE,
  611.         XV_HEIGHT, 235,
  612.         WIN_BORDER, TRUE,
  613.         NULL);
  614.     gcm_initialize_colors(obj, "BG1", NULL);
  615.     return obj;
  616. }
  617.  
  618. /*
  619.  * Create object `pauseButton' in the specified instance.
  620.  */
  621. Xv_opaque
  622. VideoEdit_window1_pauseButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  623. {
  624.     extern void        Pause(Panel_item, Event *);
  625.     Xv_opaque    obj;
  626.     Xv_opaque        pauseButton_image;
  627.     static unsigned short    pauseButton_bits[] = {
  628. #include "icons/pauseIcon"
  629.     };
  630.     
  631.     pauseButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  632.         SERVER_IMAGE_DEPTH, 1,
  633.         SERVER_IMAGE_BITS, pauseButton_bits,
  634.         XV_WIDTH, 32,
  635.         XV_HEIGHT, 15,
  636.         NULL);
  637.     obj = xv_create(owner, PANEL_BUTTON,
  638.         XV_KEY_DATA, INSTANCE, ip,
  639.         XV_HELP_DATA, "VideoEdit:pauseButton",
  640.         XV_X, 20,
  641.         XV_Y, 8,
  642.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  643.         PANEL_LABEL_IMAGE, pauseButton_image,
  644.         PANEL_NOTIFY_PROC, Pause,
  645.         NULL);
  646.     return obj;
  647. }
  648.  
  649. /*
  650.  * Create object `playButton' in the specified instance.
  651.  */
  652. Xv_opaque
  653. VideoEdit_window1_playButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  654. {
  655.     extern void        Play(Panel_item, Event *);
  656.     Xv_opaque    obj;
  657.     Xv_opaque        playButton_image;
  658.     static unsigned short    playButton_bits[] = {
  659. #include "icons/playIcon"
  660.     };
  661.     
  662.     playButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  663.         SERVER_IMAGE_DEPTH, 1,
  664.         SERVER_IMAGE_BITS, playButton_bits,
  665.         XV_WIDTH, 32,
  666.         XV_HEIGHT, 15,
  667.         NULL);
  668.     obj = xv_create(owner, PANEL_BUTTON,
  669.         XV_KEY_DATA, INSTANCE, ip,
  670.         XV_HELP_DATA, "VideoEdit:playButton",
  671.         XV_X, 92,
  672.         XV_Y, 8,
  673.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  674.         PANEL_LABEL_IMAGE, playButton_image,
  675.         PANEL_NOTIFY_PROC, Play,
  676.         NULL);
  677.     return obj;
  678. }
  679.  
  680. /*
  681.  * Create object `stopButton' in the specified instance.
  682.  */
  683. Xv_opaque
  684. VideoEdit_window1_stopButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  685. {
  686.     extern void        Stop(Panel_item, Event *);
  687.     Xv_opaque    obj;
  688.     Xv_opaque        stopButton_image;
  689.     static unsigned short    stopButton_bits[] = {
  690. #include "icons/stopIcon"
  691.     };
  692.     
  693.     stopButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  694.         SERVER_IMAGE_DEPTH, 1,
  695.         SERVER_IMAGE_BITS, stopButton_bits,
  696.         XV_WIDTH, 32,
  697.         XV_HEIGHT, 15,
  698.         NULL);
  699.     obj = xv_create(owner, PANEL_BUTTON,
  700.         XV_KEY_DATA, INSTANCE, ip,
  701.         XV_HELP_DATA, "VideoEdit:stopButton",
  702.         XV_X, 160,
  703.         XV_Y, 8,
  704.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  705.         PANEL_LABEL_IMAGE, stopButton_image,
  706.         PANEL_NOTIFY_PROC, Stop,
  707.         NULL);
  708.     return obj;
  709. }
  710.  
  711. /*
  712.  * Create object `scanRevButton' in the specified instance.
  713.  */
  714. Xv_opaque
  715. VideoEdit_window1_scanRevButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  716. {
  717.     extern void        ScanReverse(Panel_item, Event *);
  718.     Xv_opaque    obj;
  719.     Xv_opaque        scanRevButton_image;
  720.     static unsigned short    scanRevButton_bits[] = {
  721. #include "icons/rwIcon"
  722.     };
  723.     
  724.     scanRevButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  725.         SERVER_IMAGE_DEPTH, 1,
  726.         SERVER_IMAGE_BITS, scanRevButton_bits,
  727.         XV_WIDTH, 32,
  728.         XV_HEIGHT, 12,
  729.         NULL);
  730.     obj = xv_create(owner, PANEL_BUTTON,
  731.         XV_KEY_DATA, INSTANCE, ip,
  732.         XV_HELP_DATA, "VideoEdit:scanRevButton",
  733.         XV_X, 64,
  734.         XV_Y, 48,
  735.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  736.         PANEL_LABEL_IMAGE, scanRevButton_image,
  737.         PANEL_NOTIFY_PROC, ScanReverse,
  738.         NULL);
  739.     return obj;
  740. }
  741.  
  742. /*
  743.  * Create object `scanFwdButton' in the specified instance.
  744.  */
  745. Xv_opaque
  746. VideoEdit_window1_scanFwdButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  747. {
  748.     extern void        ScanForward(Panel_item, Event *);
  749.     Xv_opaque    obj;
  750.     Xv_opaque        scanFwdButton_image;
  751.     static unsigned short    scanFwdButton_bits[] = {
  752. #include "icons/ffIcon"
  753.     };
  754.     
  755.     scanFwdButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  756.         SERVER_IMAGE_DEPTH, 1,
  757.         SERVER_IMAGE_BITS, scanFwdButton_bits,
  758.         XV_WIDTH, 32,
  759.         XV_HEIGHT, 12,
  760.         NULL);
  761.     obj = xv_create(owner, PANEL_BUTTON,
  762.         XV_KEY_DATA, INSTANCE, ip,
  763.         XV_HELP_DATA, "VideoEdit:scanFwdButton",
  764.         XV_X, 124,
  765.         XV_Y, 48,
  766.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  767.         PANEL_LABEL_IMAGE, scanFwdButton_image,
  768.         PANEL_NOTIFY_PROC, ScanForward,
  769.         NULL);
  770.     return obj;
  771. }
  772.  
  773. /*
  774.  * Create object `revSkipButton' in the specified instance.
  775.  */
  776. Xv_opaque
  777. VideoEdit_window1_revSkipButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  778. {
  779.     extern void        ReverseSkip(Panel_item, Event *);
  780.     Xv_opaque    obj;
  781.     Xv_opaque        revSkipButton_image;
  782.     static unsigned short    revSkipButton_bits[] = {
  783. #include "icons/rIndexIcon"
  784.     };
  785.     
  786.     revSkipButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  787.         SERVER_IMAGE_DEPTH, 1,
  788.         SERVER_IMAGE_BITS, revSkipButton_bits,
  789.         XV_WIDTH, 32,
  790.         XV_HEIGHT, 12,
  791.         NULL);
  792.     obj = xv_create(owner, PANEL_BUTTON,
  793.         XV_KEY_DATA, INSTANCE, ip,
  794.         XV_HELP_DATA, "VideoEdit:revSkipButton",
  795.         XV_X, 12,
  796.         XV_Y, 96,
  797.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  798.         PANEL_LABEL_IMAGE, revSkipButton_image,
  799.         PANEL_NOTIFY_PROC, ReverseSkip,
  800.         NULL);
  801.     return obj;
  802. }
  803.  
  804. /*
  805.  * Create object `revStepButton' in the specified instance.
  806.  */
  807. Xv_opaque
  808. VideoEdit_window1_revStepButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  809. {
  810.     extern void        ReverseStep(Panel_item, Event *);
  811.     Xv_opaque    obj;
  812.     Xv_opaque        revStepButton_image;
  813.     static unsigned short    revStepButton_bits[] = {
  814. #include "icons/rStepIcon"
  815.     };
  816.     
  817.     revStepButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  818.         SERVER_IMAGE_DEPTH, 1,
  819.         SERVER_IMAGE_BITS, revStepButton_bits,
  820.         XV_WIDTH, 32,
  821.         XV_HEIGHT, 12,
  822.         NULL);
  823.     obj = xv_create(owner, PANEL_BUTTON,
  824.         XV_KEY_DATA, INSTANCE, ip,
  825.         XV_HELP_DATA, "VideoEdit:revStepButton",
  826.         XV_X, 72,
  827.         XV_Y, 96,
  828.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  829.         PANEL_LABEL_IMAGE, revStepButton_image,
  830.         PANEL_NOTIFY_PROC, ReverseStep,
  831.         NULL);
  832.     return obj;
  833. }
  834.  
  835. /*
  836.  * Create object `fwdStepButton' in the specified instance.
  837.  */
  838. Xv_opaque
  839. VideoEdit_window1_fwdStepButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  840. {
  841.     extern void        ForwardStep(Panel_item, Event *);
  842.     Xv_opaque    obj;
  843.     Xv_opaque        fwdStepButton_image;
  844.     static unsigned short    fwdStepButton_bits[] = {
  845. #include "icons/fStepIcon"
  846.     };
  847.     
  848.     fwdStepButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  849.         SERVER_IMAGE_DEPTH, 1,
  850.         SERVER_IMAGE_BITS, fwdStepButton_bits,
  851.         XV_WIDTH, 32,
  852.         XV_HEIGHT, 12,
  853.         NULL);
  854.     obj = xv_create(owner, PANEL_BUTTON,
  855.         XV_KEY_DATA, INSTANCE, ip,
  856.         XV_HELP_DATA, "VideoEdit:fwdStepButton",
  857.         XV_X, 120,
  858.         XV_Y, 96,
  859.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  860.         PANEL_LABEL_IMAGE, fwdStepButton_image,
  861.         PANEL_NOTIFY_PROC, ForwardStep,
  862.         NULL);
  863.     return obj;
  864. }
  865.  
  866. /*
  867.  * Create object `fwdSkipButton' in the specified instance.
  868.  */
  869. Xv_opaque
  870. VideoEdit_window1_fwdSkipButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  871. {
  872.     extern void        ForwardSkip(Panel_item, Event *);
  873.     Xv_opaque    obj;
  874.     Xv_opaque        fwdSkipButton_image;
  875.     static unsigned short    fwdSkipButton_bits[] = {
  876. #include "icons/fIndexIcon"
  877.     };
  878.     
  879.     fwdSkipButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  880.         SERVER_IMAGE_DEPTH, 1,
  881.         SERVER_IMAGE_BITS, fwdSkipButton_bits,
  882.         XV_WIDTH, 32,
  883.         XV_HEIGHT, 12,
  884.         NULL);
  885.     obj = xv_create(owner, PANEL_BUTTON,
  886.         XV_KEY_DATA, INSTANCE, ip,
  887.         XV_HELP_DATA, "VideoEdit:fwdSkipButton",
  888.         XV_X, 176,
  889.         XV_Y, 96,
  890.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  891.         PANEL_LABEL_IMAGE, fwdSkipButton_image,
  892.         PANEL_NOTIFY_PROC, ForwardSkip,
  893.         NULL);
  894.     return obj;
  895. }
  896.  
  897. /*
  898.  * Create object `speedTxt' in the specified instance.
  899.  */
  900. Xv_opaque
  901. VideoEdit_window1_speedTxt_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  902. {
  903.     Xv_opaque    obj;
  904.     
  905.     obj = xv_create(owner, PANEL_TEXT,
  906.         XV_KEY_DATA, INSTANCE, ip,
  907.         XV_X, 32,
  908.         XV_Y, 144,
  909.         PANEL_VALUE_DISPLAY_LENGTH, 5,
  910.         PANEL_VALUE_STORED_LENGTH, 5,
  911.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  912.         PANEL_LABEL_STRING, "Speed :",
  913.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  914.         PANEL_READ_ONLY, TRUE,
  915.         NULL);
  916.     return obj;
  917. }
  918.  
  919. /*
  920.  * Create object `speedMsg' in the specified instance.
  921.  */
  922. Xv_opaque
  923. VideoEdit_window1_speedMsg_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  924. {
  925.     Xv_opaque    obj;
  926.     
  927.     obj = xv_create(owner, PANEL_MESSAGE,
  928.         XV_KEY_DATA, INSTANCE, ip,
  929.         XV_X, 132,
  930.         XV_Y, 144,
  931.         PANEL_LABEL_STRING, "frames/sec",
  932.         PANEL_LABEL_BOLD, FALSE,
  933.         NULL);
  934.     return obj;
  935. }
  936.  
  937. /*
  938.  * Create object `speedSlider' in the specified instance.
  939.  */
  940. Xv_opaque
  941. VideoEdit_window1_speedSlider_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  942. {
  943.     extern void        Speed(Panel_item, int, Event *);
  944.     Xv_opaque    obj;
  945.     
  946.     obj = xv_create(owner, PANEL_SLIDER,
  947.         XV_KEY_DATA, INSTANCE, ip,
  948.         XV_HELP_DATA, "VideoEdit:speedSlider",
  949.         XV_X, 8,
  950.         XV_Y, 172,
  951.         PANEL_SLIDER_WIDTH, 200,
  952.         PANEL_TICKS, 0,
  953.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  954.         PANEL_DIRECTION, PANEL_HORIZONTAL,
  955.         PANEL_SLIDER_END_BOXES, FALSE,
  956.         PANEL_SHOW_RANGE, FALSE,
  957.         PANEL_SHOW_VALUE, FALSE,
  958.         PANEL_MIN_VALUE, -240,
  959.         PANEL_MAX_VALUE, 240,
  960.         PANEL_VALUE, 0,
  961.         PANEL_NOTIFY_PROC, Speed,
  962.         NULL);
  963.     return obj;
  964. }
  965.  
  966. /*
  967.  * Create object `ejectButton' in the specified instance.
  968.  */
  969. Xv_opaque
  970. VideoEdit_window1_ejectButton_create(VideoEdit_window1_objects *ip, Xv_opaque owner)
  971. {
  972.     extern void        Eject(Panel_item, Event *);
  973.     Xv_opaque    obj;
  974.     Xv_opaque        ejectButton_image;
  975.     static unsigned short    ejectButton_bits[] = {
  976. #include "icons/ejectIcon"
  977.     };
  978.     
  979.     ejectButton_image = xv_create(XV_NULL, SERVER_IMAGE,
  980.         SERVER_IMAGE_DEPTH, 1,
  981.         SERVER_IMAGE_BITS, ejectButton_bits,
  982.         XV_WIDTH, 32,
  983.         XV_HEIGHT, 12,
  984.         NULL);
  985.     obj = xv_create(owner, PANEL_BUTTON,
  986.         XV_KEY_DATA, INSTANCE, ip,
  987.         XV_HELP_DATA, "VideoEdit:ejectButton",
  988.         XV_X, 88,
  989.         XV_Y, 200,
  990.         PANEL_LABEL_IMAGE, ejectButton_image,
  991.         PANEL_NOTIFY_PROC, Eject,
  992.         NULL);
  993.     return obj;
  994. }
  995.  
  996. /*
  997.  * Initialize an instance of object `optionsPopup'.
  998.  */
  999. VideoEdit_optionsPopup_objects *
  1000. VideoEdit_optionsPopup_objects_initialize(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1001. {
  1002.     if (!ip && !(ip = (VideoEdit_optionsPopup_objects *) calloc(1, sizeof (VideoEdit_optionsPopup_objects))))
  1003.         return (VideoEdit_optionsPopup_objects *) NULL;
  1004.     if (!ip->optionsPopup)
  1005.         ip->optionsPopup = VideoEdit_optionsPopup_optionsPopup_create(ip, owner);
  1006.     if (!ip->optionsControls)
  1007.         ip->optionsControls = VideoEdit_optionsPopup_optionsControls_create(ip, ip->optionsPopup);
  1008.     if (!ip->optionsPlayerStg)
  1009.         ip->optionsPlayerStg = VideoEdit_optionsPopup_optionsPlayerStg_create(ip, ip->optionsControls);
  1010.     if (!ip->setPlayerButton)
  1011.         ip->setPlayerButton = VideoEdit_optionsPopup_setPlayerButton_create(ip, ip->optionsControls);
  1012.     if (!ip->optionsPortStg)
  1013.         ip->optionsPortStg = VideoEdit_optionsPopup_optionsPortStg_create(ip, ip->optionsControls);
  1014.     if (!ip->optionsNetworkHost)
  1015.         ip->optionsNetworkHost = VideoEdit_optionsPopup_optionsNetworkHost_create(ip, ip->optionsControls);
  1016.     if (!ip->optionsAudioStg)
  1017.         ip->optionsAudioStg = VideoEdit_optionsPopup_optionsAudioStg_create(ip, ip->optionsControls);
  1018.     if (!ip->optionsSearchStg)
  1019.         ip->optionsSearchStg = VideoEdit_optionsPopup_optionsSearchStg_create(ip, ip->optionsControls);
  1020.     if (!ip->optionsDisplayStg)
  1021.         ip->optionsDisplayStg = VideoEdit_optionsPopup_optionsDisplayStg_create(ip, ip->optionsControls);
  1022.     if (!ip->optionsInfoButton)
  1023.         ip->optionsInfoButton = VideoEdit_optionsPopup_optionsInfoButton_create(ip, ip->optionsControls);
  1024.     if (!ip->optionsDoneButton)
  1025.         ip->optionsDoneButton = VideoEdit_optionsPopup_optionsDoneButton_create(ip, ip->optionsControls);
  1026.     return ip;
  1027. }
  1028.  
  1029. /*
  1030.  * Create object `optionsPopup' in the specified instance.
  1031.  */
  1032. Xv_opaque
  1033. VideoEdit_optionsPopup_optionsPopup_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1034. {
  1035.     Xv_opaque    obj;
  1036.     
  1037.     obj = xv_create(owner, FRAME_CMD,
  1038.         XV_KEY_DATA, INSTANCE, ip,
  1039.         XV_WIDTH, 386,
  1040.         XV_HEIGHT, 227,
  1041.         XV_LABEL, "Video Options",
  1042.         XV_SHOW, FALSE,
  1043.         FRAME_SHOW_FOOTER, TRUE,
  1044.         FRAME_SHOW_RESIZE_CORNER, TRUE,
  1045.         FRAME_CMD_PUSHPIN_IN, TRUE,
  1046.         NULL);
  1047.     gcm_initialize_colors(obj, "BG1", NULL);
  1048.     xv_set(xv_get(obj, FRAME_CMD_PANEL), WIN_SHOW, FALSE, NULL);
  1049.     return obj;
  1050. }
  1051.  
  1052. /*
  1053.  * Create object `optionsControls' in the specified instance.
  1054.  */
  1055. Xv_opaque
  1056. VideoEdit_optionsPopup_optionsControls_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1057. {
  1058.     Xv_opaque    obj;
  1059.     
  1060.     obj = xv_create(owner, PANEL,
  1061.         XV_KEY_DATA, INSTANCE, ip,
  1062.         XV_X, 0,
  1063.         XV_Y, 0,
  1064.         XV_WIDTH, 385,
  1065.         XV_HEIGHT, 224,
  1066.         WIN_BORDER, FALSE,
  1067.         NULL);
  1068.     gcm_initialize_colors(obj, "BG1", "Black");
  1069.     return obj;
  1070. }
  1071.  
  1072. /*
  1073.  * Create object `optionsPlayerStg' in the specified instance.
  1074.  */
  1075. Xv_opaque
  1076. VideoEdit_optionsPopup_optionsPlayerStg_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1077. {
  1078.     Xv_opaque    obj;
  1079.     
  1080.     obj = xv_create(owner, PANEL_CHOICE, PANEL_DISPLAY_LEVEL, PANEL_CURRENT,
  1081.         XV_KEY_DATA, INSTANCE, ip,
  1082.         XV_HELP_DATA, "VideoEdit:optionsPlayerStg",
  1083.         XV_X, 44,
  1084.         XV_Y, 12,
  1085.         PANEL_CHOICE_NROWS, 1,
  1086.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1087.         PANEL_LABEL_STRING, "Player:",
  1088.         PANEL_CHOICE_STRING, 0, "None",
  1089.         NULL);
  1090.     return obj;
  1091. }
  1092.  
  1093. /*
  1094.  * Create object `setPlayerButton' in the specified instance.
  1095.  */
  1096. Xv_opaque
  1097. VideoEdit_optionsPopup_setPlayerButton_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1098. {
  1099.     extern void        SetPlayerHandler(Panel_item, Event *);
  1100.     Xv_opaque    obj;
  1101.     
  1102.     obj = xv_create(owner, PANEL_BUTTON,
  1103.         XV_KEY_DATA, INSTANCE, ip,
  1104.         XV_X, 260,
  1105.         XV_Y, 16,
  1106.         PANEL_LABEL_STRING, "Set Player",
  1107.         PANEL_NOTIFY_PROC, SetPlayerHandler,
  1108.         NULL);
  1109.     return obj;
  1110. }
  1111.  
  1112. /*
  1113.  * Create object `optionsPortStg' in the specified instance.
  1114.  */
  1115. Xv_opaque
  1116. VideoEdit_optionsPopup_optionsPortStg_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1117. {
  1118.     Xv_opaque    obj;
  1119.     
  1120.     obj = xv_create(owner, PANEL_CHOICE,
  1121.         XV_KEY_DATA, INSTANCE, ip,
  1122.         XV_HELP_DATA, "VideoEdit:optionsPortStg",
  1123.         XV_X, 16,
  1124.         XV_Y, 40,
  1125.         PANEL_CHOICE_NROWS, 1,
  1126.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1127.         PANEL_CHOOSE_NONE, FALSE,
  1128.         PANEL_LABEL_STRING, "Serial Port:",
  1129.         PANEL_CHOICE_STRINGS,
  1130.             "Default",
  1131.             "A",
  1132.             "B",
  1133.             NULL,
  1134.         NULL);
  1135.     return obj;
  1136. }
  1137.  
  1138. /*
  1139.  * Create object `optionsNetworkHost' in the specified instance.
  1140.  */
  1141. Xv_opaque
  1142. VideoEdit_optionsPopup_optionsNetworkHost_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1143. {
  1144.     extern Panel_setting    SetNetworkHost(Panel_item, Event *);
  1145.     Xv_opaque    obj;
  1146.     
  1147.     obj = xv_create(owner, PANEL_TEXT,
  1148.         XV_KEY_DATA, INSTANCE, ip,
  1149.         XV_HELP_DATA, "VideoEdit:optionsNetworkHost",
  1150.         XV_X, 8,
  1151.         XV_Y, 76,
  1152.         PANEL_VALUE_DISPLAY_LENGTH, 30,
  1153.         PANEL_VALUE_STORED_LENGTH, 30,
  1154.         PANEL_LABEL_STRING, "Network Host :",
  1155.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1156.         PANEL_READ_ONLY, FALSE,
  1157.         PANEL_NOTIFY_PROC, SetNetworkHost,
  1158.         NULL);
  1159.     return obj;
  1160. }
  1161.  
  1162. /*
  1163.  * Create object `optionsAudioStg' in the specified instance.
  1164.  */
  1165. Xv_opaque
  1166. VideoEdit_optionsPopup_optionsAudioStg_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1167. {
  1168.     extern void        Audio(Panel_item, int, Event *);
  1169.     Xv_opaque    obj;
  1170.     
  1171.     obj = xv_create(owner, PANEL_CHOICE,
  1172.         XV_KEY_DATA, INSTANCE, ip,
  1173.         XV_HELP_DATA, "VideoEdit:optionsAudioStg",
  1174.         XV_X, 8,
  1175.         XV_Y, 104,
  1176.         PANEL_CHOICE_NROWS, 1,
  1177.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1178.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1179.         PANEL_CHOOSE_NONE, FALSE,
  1180.         PANEL_LABEL_STRING, "Audio:    ",
  1181.         PANEL_NOTIFY_PROC, Audio,
  1182.         PANEL_CHOICE_STRINGS,
  1183.             "Off",
  1184.             "Left",
  1185.             "Right",
  1186.             "Stereo",
  1187.             NULL,
  1188.         NULL);
  1189.     return obj;
  1190. }
  1191.  
  1192. /*
  1193.  * Create object `optionsSearchStg' in the specified instance.
  1194.  */
  1195. Xv_opaque
  1196. VideoEdit_optionsPopup_optionsSearchStg_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1197. {
  1198.     extern void        SearchSet(Panel_item, int, Event *);
  1199.     Xv_opaque    obj;
  1200.     
  1201.     obj = xv_create(owner, PANEL_CHOICE,
  1202.         XV_KEY_DATA, INSTANCE, ip,
  1203.         XV_HELP_DATA, "VideoEdit:optionsSearchStg",
  1204.         XV_X, 8,
  1205.         XV_Y, 144,
  1206.         PANEL_CHOICE_NROWS, 1,
  1207.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1208.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1209.         PANEL_CHOOSE_NONE, FALSE,
  1210.         PANEL_LABEL_STRING, "Search:  ",
  1211.         PANEL_NOTIFY_PROC, SearchSet,
  1212.         PANEL_CHOICE_STRINGS,
  1213.             "Frame",
  1214.             "Chapter",
  1215.             NULL,
  1216.         NULL);
  1217.     return obj;
  1218. }
  1219.  
  1220. /*
  1221.  * Create object `optionsDisplayStg' in the specified instance.
  1222.  */
  1223. Xv_opaque
  1224. VideoEdit_optionsPopup_optionsDisplayStg_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1225. {
  1226.     extern void        DisplaySelect(Panel_item, int, Event *);
  1227.     Xv_opaque    obj;
  1228.     
  1229.     obj = xv_create(owner, PANEL_CHOICE,
  1230.         XV_KEY_DATA, INSTANCE, ip,
  1231.         XV_HELP_DATA, "VideoEdit:optionsDisplayStg",
  1232.         XV_X, 232,
  1233.         XV_Y, 144,
  1234.         PANEL_CHOICE_NROWS, 1,
  1235.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1236.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1237.         PANEL_CHOOSE_NONE, FALSE,
  1238.         PANEL_LABEL_STRING, "Display:",
  1239.         PANEL_NOTIFY_PROC, DisplaySelect,
  1240.         PANEL_CHOICE_STRINGS,
  1241.             "Off",
  1242.             "On",
  1243.             NULL,
  1244.         NULL);
  1245.     return obj;
  1246. }
  1247.  
  1248. /*
  1249.  * Create object `optionsInfoButton' in the specified instance.
  1250.  */
  1251. Xv_opaque
  1252. VideoEdit_optionsPopup_optionsInfoButton_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1253. {
  1254.     extern void        Info(Panel_item, Event *);
  1255.     Xv_opaque    obj;
  1256.     
  1257.     obj = xv_create(owner, PANEL_BUTTON,
  1258.         XV_KEY_DATA, INSTANCE, ip,
  1259.         XV_HELP_DATA, "VideoEdit:optionsInfoButton",
  1260.         XV_X, 72,
  1261.         XV_Y, 192,
  1262.         PANEL_LABEL_STRING, "Info ...",
  1263.         PANEL_NOTIFY_PROC, Info,
  1264.         NULL);
  1265.     return obj;
  1266. }
  1267.  
  1268. /*
  1269.  * Create object `optionsDoneButton' in the specified instance.
  1270.  */
  1271. Xv_opaque
  1272. VideoEdit_optionsPopup_optionsDoneButton_create(VideoEdit_optionsPopup_objects *ip, Xv_opaque owner)
  1273. {
  1274.     extern void        Done(Panel_item, Event *);
  1275.     Xv_opaque    obj;
  1276.     
  1277.     obj = xv_create(owner, PANEL_BUTTON,
  1278.         XV_KEY_DATA, INSTANCE, ip,
  1279.         XV_HELP_DATA, "VideoEdit:optionsDoneButton",
  1280.         XV_X, 248,
  1281.         XV_Y, 192,
  1282.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1283.         PANEL_LABEL_STRING, "Done",
  1284.         PANEL_NOTIFY_PROC, Done,
  1285.         NULL);
  1286.     return obj;
  1287. }
  1288.  
  1289. /*
  1290.  * Initialize an instance of object `editPopup'.
  1291.  */
  1292. VideoEdit_editPopup_objects *
  1293. VideoEdit_editPopup_objects_initialize(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1294. {
  1295.     if (!ip && !(ip = (VideoEdit_editPopup_objects *) calloc(1, sizeof (VideoEdit_editPopup_objects))))
  1296.         return (VideoEdit_editPopup_objects *) NULL;
  1297.     if (!ip->editPopup)
  1298.         ip->editPopup = VideoEdit_editPopup_editPopup_create(ip, owner);
  1299.     if (!ip->editFileControls)
  1300.         ip->editFileControls = VideoEdit_editPopup_editFileControls_create(ip, ip->editPopup);
  1301.     if (!ip->editDocButton)
  1302.         ip->editDocButton = VideoEdit_editPopup_editDocButton_create(ip, ip->editFileControls);
  1303.     if (!ip->editScrollListControls)
  1304.         ip->editScrollListControls = VideoEdit_editPopup_editScrollListControls_create(ip, ip->editPopup);
  1305.     if (!ip->editListMsg)
  1306.         ip->editListMsg = VideoEdit_editPopup_editListMsg_create(ip, ip->editScrollListControls);
  1307.     if (!ip->editNumEditMsg)
  1308.         ip->editNumEditMsg = VideoEdit_editPopup_editNumEditMsg_create(ip, ip->editScrollListControls);
  1309.     if (!ip->editTableHeader)
  1310.         ip->editTableHeader = VideoEdit_editPopup_editTableHeader_create(ip, ip->editScrollListControls);
  1311.     if (!ip->editTableHeader2)
  1312.         ip->editTableHeader2 = VideoEdit_editPopup_editTableHeader2_create(ip, ip->editScrollListControls);
  1313.     if (!ip->editScrollList)
  1314.         ip->editScrollList = VideoEdit_editPopup_editScrollList_create(ip, ip->editScrollListControls);
  1315.     if (!ip->editSelectionControls)
  1316.         ip->editSelectionControls = VideoEdit_editPopup_editSelectionControls_create(ip, ip->editPopup);
  1317.     if (!ip->editNewEditMsg)
  1318.         ip->editNewEditMsg = VideoEdit_editPopup_editNewEditMsg_create(ip, ip->editSelectionControls);
  1319.     if (!ip->editStartTxt)
  1320.         ip->editStartTxt = VideoEdit_editPopup_editStartTxt_create(ip, ip->editSelectionControls);
  1321.     if (!ip->editGetStartButton)
  1322.         ip->editGetStartButton = VideoEdit_editPopup_editGetStartButton_create(ip, ip->editSelectionControls);
  1323.     if (!ip->editInstruct1)
  1324.         ip->editInstruct1 = VideoEdit_editPopup_editInstruct1_create(ip, ip->editSelectionControls);
  1325.     if (!ip->editEndTxt)
  1326.         ip->editEndTxt = VideoEdit_editPopup_editEndTxt_create(ip, ip->editSelectionControls);
  1327.     if (!ip->editGetEndButton)
  1328.         ip->editGetEndButton = VideoEdit_editPopup_editGetEndButton_create(ip, ip->editSelectionControls);
  1329.     if (!ip->editInstruct2)
  1330.         ip->editInstruct2 = VideoEdit_editPopup_editInstruct2_create(ip, ip->editSelectionControls);
  1331.     if (!ip->editSpeedTxt)
  1332.         ip->editSpeedTxt = VideoEdit_editPopup_editSpeedTxt_create(ip, ip->editSelectionControls);
  1333.     if (!ip->editSpeedMsg)
  1334.         ip->editSpeedMsg = VideoEdit_editPopup_editSpeedMsg_create(ip, ip->editSelectionControls);
  1335.     if (!ip->editDurTxt)
  1336.         ip->editDurTxt = VideoEdit_editPopup_editDurTxt_create(ip, ip->editSelectionControls);
  1337.     if (!ip->editDurSecMsg)
  1338.         ip->editDurSecMsg = VideoEdit_editPopup_editDurSecMsg_create(ip, ip->editSelectionControls);
  1339.     if (!ip->editAudioMenuButton)
  1340.         ip->editAudioMenuButton = VideoEdit_editPopup_editAudioMenuButton_create(ip, ip->editSelectionControls);
  1341.     if (!ip->editLabelTxt)
  1342.         ip->editLabelTxt = VideoEdit_editPopup_editLabelTxt_create(ip, ip->editSelectionControls);
  1343.     if (!ip->editAudioMsg)
  1344.         ip->editAudioMsg = VideoEdit_editPopup_editAudioMsg_create(ip, ip->editSelectionControls);
  1345.     if (!ip->editAddButton)
  1346.         ip->editAddButton = VideoEdit_editPopup_editAddButton_create(ip, ip->editSelectionControls);
  1347.     if (!ip->editModButton)
  1348.         ip->editModButton = VideoEdit_editPopup_editModButton_create(ip, ip->editSelectionControls);
  1349.     if (!ip->editDelButton)
  1350.         ip->editDelButton = VideoEdit_editPopup_editDelButton_create(ip, ip->editSelectionControls);
  1351.     if (!ip->editDelAllButton)
  1352.         ip->editDelAllButton = VideoEdit_editPopup_editDelAllButton_create(ip, ip->editSelectionControls);
  1353.     if (!ip->editPreviewButton)
  1354.         ip->editPreviewButton = VideoEdit_editPopup_editPreviewButton_create(ip, ip->editSelectionControls);
  1355.     return ip;
  1356. }
  1357.  
  1358. /*
  1359.  * Create object `editPopup' in the specified instance.
  1360.  */
  1361. Xv_opaque
  1362. VideoEdit_editPopup_editPopup_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1363. {
  1364.     Xv_opaque    obj;
  1365.     
  1366.     obj = xv_create(owner, FRAME_CMD,
  1367.         XV_KEY_DATA, INSTANCE, ip,
  1368.         XV_WIDTH, 529,
  1369.         XV_HEIGHT, 500,
  1370.         XV_LABEL, "Untitled",
  1371.         XV_SHOW, FALSE,
  1372.         FRAME_SHOW_FOOTER, FALSE,
  1373.         FRAME_SHOW_RESIZE_CORNER, FALSE,
  1374.         FRAME_CMD_PUSHPIN_IN, TRUE,
  1375.         NULL);
  1376.     gcm_initialize_colors(obj, "BG1", NULL);
  1377.     xv_set(xv_get(obj, FRAME_CMD_PANEL), WIN_SHOW, FALSE, NULL);
  1378.     return obj;
  1379. }
  1380.  
  1381. /*
  1382.  * Create object `editFileControls' in the specified instance.
  1383.  */
  1384. Xv_opaque
  1385. VideoEdit_editPopup_editFileControls_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1386. {
  1387.     Xv_opaque    obj;
  1388.     
  1389.     obj = xv_create(owner, PANEL,
  1390.         XV_KEY_DATA, INSTANCE, ip,
  1391.         XV_X, 0,
  1392.         XV_Y, 0,
  1393.         XV_WIDTH, 528,
  1394.         XV_HEIGHT, 40,
  1395.         WIN_BORDER, TRUE,
  1396.         NULL);
  1397.     gcm_initialize_colors(obj, "BG1", "Black");
  1398.     return obj;
  1399. }
  1400.  
  1401. /*
  1402.  * Create object `editDocButton' in the specified instance.
  1403.  */
  1404. Xv_opaque
  1405. VideoEdit_editPopup_editDocButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1406. {
  1407.     Xv_opaque    obj;
  1408.     
  1409.     obj = xv_create(owner, PANEL_BUTTON,
  1410.         XV_KEY_DATA, INSTANCE, ip,
  1411.         XV_HELP_DATA, "VideoEdit:editDocButton",
  1412.         XV_X, 28,
  1413.         XV_Y, 12,
  1414.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1415.         PANEL_LABEL_STRING, "Document",
  1416.         PANEL_ITEM_MENU, VideoEdit_DocMenu_create((caddr_t) ip, ip->editPopup),
  1417.         NULL);
  1418.     return obj;
  1419. }
  1420.  
  1421. /*
  1422.  * Create object `editScrollListControls' in the specified instance.
  1423.  */
  1424. Xv_opaque
  1425. VideoEdit_editPopup_editScrollListControls_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1426. {
  1427.     Xv_opaque    obj;
  1428.     
  1429.     obj = xv_create(owner, PANEL,
  1430.         XV_KEY_DATA, INSTANCE, ip,
  1431.         XV_X, 0,
  1432.         XV_Y, 39,
  1433.         XV_WIDTH, WIN_EXTEND_TO_EDGE,
  1434.         XV_HEIGHT, 235,
  1435.         WIN_BORDER, TRUE,
  1436.         NULL);
  1437.     gcm_initialize_colors(obj, "BG1", NULL);
  1438.     return obj;
  1439. }
  1440.  
  1441. /*
  1442.  * Create object `editListMsg' in the specified instance.
  1443.  */
  1444. Xv_opaque
  1445. VideoEdit_editPopup_editListMsg_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1446. {
  1447.     Xv_opaque    obj;
  1448.     
  1449.     obj = xv_create(owner, PANEL_MESSAGE,
  1450.         XV_KEY_DATA, INSTANCE, ip,
  1451.         XV_X, 236,
  1452.         XV_Y, 16,
  1453.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1454.         PANEL_LABEL_STRING, "Edit List",
  1455.         PANEL_LABEL_BOLD, TRUE,
  1456.         NULL);
  1457.     return obj;
  1458. }
  1459.  
  1460. /*
  1461.  * Create object `editNumEditMsg' in the specified instance.
  1462.  */
  1463. Xv_opaque
  1464. VideoEdit_editPopup_editNumEditMsg_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1465. {
  1466.     Xv_opaque    obj;
  1467.     
  1468.     obj = xv_create(owner, PANEL_MESSAGE,
  1469.         XV_KEY_DATA, INSTANCE, ip,
  1470.         XV_X, 396,
  1471.         XV_Y, 17,
  1472.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1473.         PANEL_LABEL_STRING, "No. of Edits : 0",
  1474.         PANEL_LABEL_BOLD, FALSE,
  1475.         NULL);
  1476.     return obj;
  1477. }
  1478.  
  1479. /*
  1480.  * Create object `editTableHeader' in the specified instance.
  1481.  */
  1482. Xv_opaque
  1483. VideoEdit_editPopup_editTableHeader_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1484. {
  1485.     Xv_opaque    obj;
  1486.     
  1487.     obj = xv_create(owner, PANEL_MESSAGE,
  1488.         XV_KEY_DATA, INSTANCE, ip,
  1489.         XV_X, 24,
  1490.         XV_Y, 48,
  1491.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1492.         PANEL_LABEL_STRING, "  Edit #           Label                         Start         End      Audio ",
  1493.         PANEL_LABEL_BOLD, TRUE,
  1494.         NULL);
  1495.     return obj;
  1496. }
  1497.  
  1498. /*
  1499.  * Create object `editTableHeader2' in the specified instance.
  1500.  */
  1501. Xv_opaque
  1502. VideoEdit_editPopup_editTableHeader2_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1503. {
  1504.     Xv_opaque    obj;
  1505.     
  1506.     obj = xv_create(owner, PANEL_MESSAGE,
  1507.         XV_KEY_DATA, INSTANCE, ip,
  1508.         XV_X, 436,
  1509.         XV_Y, 48,
  1510.         PANEL_LABEL_STRING, "Speed",
  1511.         PANEL_LABEL_BOLD, TRUE,
  1512.         NULL);
  1513.     return obj;
  1514. }
  1515.  
  1516. /*
  1517.  * Create object `editScrollList' in the specified instance.
  1518.  */
  1519. Xv_opaque
  1520. VideoEdit_editPopup_editScrollList_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1521. {
  1522.     extern int        List(Panel_item, char *, Xv_opaque, Panel_list_op, Event *, int);
  1523.     Xv_opaque    obj;
  1524.     
  1525.     obj = xv_create(owner, PANEL_LIST,
  1526.         XV_KEY_DATA, INSTANCE, ip,
  1527.         XV_HELP_DATA, "VideoEdit:editScrollList",
  1528.         XV_X, 4,
  1529.         XV_Y, 72,
  1530.         PANEL_LIST_WIDTH, 490,
  1531.         PANEL_LIST_DISPLAY_ROWS, 7,
  1532.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1533.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1534.         PANEL_READ_ONLY, FALSE,
  1535.         PANEL_CHOOSE_ONE, TRUE,
  1536.         PANEL_CHOOSE_NONE, TRUE,
  1537.         PANEL_NOTIFY_PROC, List,
  1538.         NULL);
  1539.     return obj;
  1540. }
  1541.  
  1542. /*
  1543.  * Create object `editSelectionControls' in the specified instance.
  1544.  */
  1545. Xv_opaque
  1546. VideoEdit_editPopup_editSelectionControls_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1547. {
  1548.     Xv_opaque    obj;
  1549.     
  1550.     obj = xv_create(owner, PANEL,
  1551.         XV_KEY_DATA, INSTANCE, ip,
  1552.         XV_X, 0,
  1553.         XV_Y, 273,
  1554.         XV_WIDTH, WIN_EXTEND_TO_EDGE,
  1555.         XV_HEIGHT, 226,
  1556.         WIN_BORDER, TRUE,
  1557.         NULL);
  1558.     gcm_initialize_colors(obj, "BG1", NULL);
  1559.     return obj;
  1560. }
  1561.  
  1562. /*
  1563.  * Create object `editNewEditMsg' in the specified instance.
  1564.  */
  1565. Xv_opaque
  1566. VideoEdit_editPopup_editNewEditMsg_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1567. {
  1568.     Xv_opaque    obj;
  1569.     
  1570.     obj = xv_create(owner, PANEL_MESSAGE,
  1571.         XV_KEY_DATA, INSTANCE, ip,
  1572.         XV_X, 176,
  1573.         XV_Y, 16,
  1574.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1575.         PANEL_LABEL_STRING, "Current Selection : New Edit",
  1576.         PANEL_LABEL_BOLD, TRUE,
  1577.         NULL);
  1578.     return obj;
  1579. }
  1580.  
  1581. /*
  1582.  * Create object `editStartTxt' in the specified instance.
  1583.  */
  1584. Xv_opaque
  1585. VideoEdit_editPopup_editStartTxt_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1586. {
  1587.     Xv_opaque    obj;
  1588.     
  1589.     obj = xv_create(owner, PANEL_NUMERIC_TEXT,
  1590.         XV_KEY_DATA, INSTANCE, ip,
  1591.         XV_HELP_DATA, "VideoEdit:editStartTxt",
  1592.         XV_X, 16,
  1593.         XV_Y, 48,
  1594.         PANEL_VALUE_DISPLAY_LENGTH, 5,
  1595.         PANEL_VALUE_STORED_LENGTH, 5,
  1596.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1597.         PANEL_LABEL_STRING, "Start  : ",
  1598.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1599.         PANEL_MAX_VALUE, 99999,
  1600.         PANEL_MIN_VALUE, 0,
  1601.         PANEL_VALUE, 0,
  1602.         PANEL_READ_ONLY, FALSE,
  1603.         NULL);
  1604.     return obj;
  1605. }
  1606.  
  1607. /*
  1608.  * Create object `editGetStartButton' in the specified instance.
  1609.  */
  1610. Xv_opaque
  1611. VideoEdit_editPopup_editGetStartButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1612. {
  1613.     extern void        GetStart(Panel_item, Event *);
  1614.     Xv_opaque    obj;
  1615.     
  1616.     obj = xv_create(owner, PANEL_BUTTON,
  1617.         XV_KEY_DATA, INSTANCE, ip,
  1618.         XV_HELP_DATA, "VideoEdit:editGetStartButton",
  1619.         XV_X, 160,
  1620.         XV_Y, 48,
  1621.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1622.         PANEL_LABEL_STRING, "<-",
  1623.         PANEL_NOTIFY_PROC, GetStart,
  1624.         NULL);
  1625.     return obj;
  1626. }
  1627.  
  1628. /*
  1629.  * Create object `editInstruct1' in the specified instance.
  1630.  */
  1631. Xv_opaque
  1632. VideoEdit_editPopup_editInstruct1_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1633. {
  1634.     Xv_opaque    obj;
  1635.     
  1636.     obj = xv_create(owner, PANEL_MESSAGE,
  1637.         XV_KEY_DATA, INSTANCE, ip,
  1638.         XV_X, 204,
  1639.         XV_Y, 56,
  1640.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1641.         PANEL_LABEL_STRING, "Get current frame ",
  1642.         PANEL_LABEL_BOLD, FALSE,
  1643.         NULL);
  1644.     return obj;
  1645. }
  1646.  
  1647. /*
  1648.  * Create object `editEndTxt' in the specified instance.
  1649.  */
  1650. Xv_opaque
  1651. VideoEdit_editPopup_editEndTxt_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1652. {
  1653.     Xv_opaque    obj;
  1654.     
  1655.     obj = xv_create(owner, PANEL_NUMERIC_TEXT,
  1656.         XV_KEY_DATA, INSTANCE, ip,
  1657.         XV_HELP_DATA, "VideoEdit:editEndTxt",
  1658.         XV_X, 16,
  1659.         XV_Y, 76,
  1660.         PANEL_VALUE_DISPLAY_LENGTH, 5,
  1661.         PANEL_VALUE_STORED_LENGTH, 5,
  1662.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1663.         PANEL_LABEL_STRING, "End    : ",
  1664.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1665.         PANEL_MAX_VALUE, 99999,
  1666.         PANEL_MIN_VALUE, 0,
  1667.         PANEL_VALUE, 0,
  1668.         PANEL_READ_ONLY, FALSE,
  1669.         NULL);
  1670.     return obj;
  1671. }
  1672.  
  1673. /*
  1674.  * Create object `editGetEndButton' in the specified instance.
  1675.  */
  1676. Xv_opaque
  1677. VideoEdit_editPopup_editGetEndButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1678. {
  1679.     extern void        GetEnd(Panel_item, Event *);
  1680.     Xv_opaque    obj;
  1681.     
  1682.     obj = xv_create(owner, PANEL_BUTTON,
  1683.         XV_KEY_DATA, INSTANCE, ip,
  1684.         XV_HELP_DATA, "VideoEdit:editGetEndButton",
  1685.         XV_X, 160,
  1686.         XV_Y, 76,
  1687.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1688.         PANEL_LABEL_STRING, "<-",
  1689.         PANEL_NOTIFY_PROC, GetEnd,
  1690.         NULL);
  1691.     return obj;
  1692. }
  1693.  
  1694. /*
  1695.  * Create object `editInstruct2' in the specified instance.
  1696.  */
  1697. Xv_opaque
  1698. VideoEdit_editPopup_editInstruct2_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1699. {
  1700.     Xv_opaque    obj;
  1701.     
  1702.     obj = xv_create(owner, PANEL_MESSAGE,
  1703.         XV_KEY_DATA, INSTANCE, ip,
  1704.         XV_X, 208,
  1705.         XV_Y, 76,
  1706.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1707.         PANEL_LABEL_STRING, "number from disc",
  1708.         PANEL_LABEL_BOLD, FALSE,
  1709.         NULL);
  1710.     return obj;
  1711. }
  1712.  
  1713. /*
  1714.  * Create object `editSpeedTxt' in the specified instance.
  1715.  */
  1716. Xv_opaque
  1717. VideoEdit_editPopup_editSpeedTxt_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1718. {
  1719.     extern Panel_setting    EditSpeedStg(Panel_item, Event *);
  1720.     Xv_opaque    obj;
  1721.     
  1722.     obj = xv_create(owner, PANEL_NUMERIC_TEXT,
  1723.         XV_KEY_DATA, INSTANCE, ip,
  1724.         XV_HELP_DATA, "VideoEdit:editSpeedTxt",
  1725.         XV_X, 356,
  1726.         XV_Y, 80,
  1727.         PANEL_VALUE_DISPLAY_LENGTH, 3,
  1728.         PANEL_VALUE_STORED_LENGTH, 3,
  1729.         PANEL_LABEL_STRING, "Speed:",
  1730.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1731.         PANEL_MAX_VALUE, 600,
  1732.         PANEL_MIN_VALUE, 0,
  1733.         PANEL_VALUE, 0,
  1734.         PANEL_READ_ONLY, FALSE,
  1735.         PANEL_NOTIFY_PROC, EditSpeedStg,
  1736.         NULL);
  1737.     return obj;
  1738. }
  1739.  
  1740. /*
  1741.  * Create object `editSpeedMsg' in the specified instance.
  1742.  */
  1743. Xv_opaque
  1744. VideoEdit_editPopup_editSpeedMsg_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1745. {
  1746.     Xv_opaque    obj;
  1747.     
  1748.     obj = xv_create(owner, PANEL_MESSAGE,
  1749.         XV_KEY_DATA, INSTANCE, ip,
  1750.         XV_X, 416,
  1751.         XV_Y, 104,
  1752.         PANEL_LABEL_STRING, "(frames/sec)",
  1753.         PANEL_LABEL_BOLD, FALSE,
  1754.         NULL);
  1755.     return obj;
  1756. }
  1757.  
  1758. /*
  1759.  * Create object `editDurTxt' in the specified instance.
  1760.  */
  1761. Xv_opaque
  1762. VideoEdit_editPopup_editDurTxt_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1763. {
  1764.     Xv_opaque    obj;
  1765.     
  1766.     obj = xv_create(owner, PANEL_TEXT,
  1767.         XV_KEY_DATA, INSTANCE, ip,
  1768.         XV_HELP_DATA, "VideoEdit:editDurTxt",
  1769.         XV_X, 16,
  1770.         XV_Y, 108,
  1771.         PANEL_VALUE_DISPLAY_LENGTH, 8,
  1772.         PANEL_VALUE_STORED_LENGTH, 80,
  1773.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1774.         PANEL_LABEL_STRING, "Approximate duration :",
  1775.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1776.         PANEL_READ_ONLY, TRUE,
  1777.         NULL);
  1778.     return obj;
  1779. }
  1780.  
  1781. /*
  1782.  * Create object `editDurSecMsg' in the specified instance.
  1783.  */
  1784. Xv_opaque
  1785. VideoEdit_editPopup_editDurSecMsg_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1786. {
  1787.     Xv_opaque    obj;
  1788.     
  1789.     obj = xv_create(owner, PANEL_MESSAGE,
  1790.         XV_KEY_DATA, INSTANCE, ip,
  1791.         XV_X, 252,
  1792.         XV_Y, 108,
  1793.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1794.         PANEL_LABEL_STRING, "seconds",
  1795.         PANEL_LABEL_BOLD, FALSE,
  1796.         NULL);
  1797.     return obj;
  1798. }
  1799.  
  1800. /*
  1801.  * Create object `editAudioMenuButton' in the specified instance.
  1802.  */
  1803. Xv_opaque
  1804. VideoEdit_editPopup_editAudioMenuButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1805. {
  1806.     Xv_opaque    obj;
  1807.     
  1808.     obj = xv_create(owner, PANEL_BUTTON,
  1809.         XV_KEY_DATA, INSTANCE, ip,
  1810.         XV_HELP_DATA, "VideoEdit:editAudioMenuButton",
  1811.         XV_X, 420,
  1812.         XV_Y, 136,
  1813.         PANEL_LABEL_STRING, "Stereo",
  1814.         PANEL_ITEM_MENU, VideoEdit_editAudioMenu_create((caddr_t) ip, ip->editPopup),
  1815.         NULL);
  1816.     return obj;
  1817. }
  1818.  
  1819. /*
  1820.  * Create object `editLabelTxt' in the specified instance.
  1821.  */
  1822. Xv_opaque
  1823. VideoEdit_editPopup_editLabelTxt_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1824. {
  1825.     Xv_opaque    obj;
  1826.     
  1827.     obj = xv_create(owner, PANEL_TEXT,
  1828.         XV_KEY_DATA, INSTANCE, ip,
  1829.         XV_HELP_DATA, "VideoEdit:editLabelTxt",
  1830.         XV_X, 16,
  1831.         XV_Y, 140,
  1832.         PANEL_VALUE_DISPLAY_LENGTH, 22,
  1833.         PANEL_VALUE_STORED_LENGTH, 22,
  1834.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1835.         PANEL_LABEL_STRING, "Label :",
  1836.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  1837.         PANEL_READ_ONLY, FALSE,
  1838.         NULL);
  1839.     return obj;
  1840. }
  1841.  
  1842. /*
  1843.  * Create object `editAudioMsg' in the specified instance.
  1844.  */
  1845. Xv_opaque
  1846. VideoEdit_editPopup_editAudioMsg_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1847. {
  1848.     Xv_opaque    obj;
  1849.     
  1850.     obj = xv_create(owner, PANEL_MESSAGE,
  1851.         XV_KEY_DATA, INSTANCE, ip,
  1852.         XV_X, 356,
  1853.         XV_Y, 140,
  1854.         PANEL_LABEL_STRING, "Audio:",
  1855.         PANEL_LABEL_BOLD, TRUE,
  1856.         NULL);
  1857.     return obj;
  1858. }
  1859.  
  1860. /*
  1861.  * Create object `editAddButton' in the specified instance.
  1862.  */
  1863. Xv_opaque
  1864. VideoEdit_editPopup_editAddButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1865. {
  1866.     extern void        EditAdd(Panel_item, Event *);
  1867.     Xv_opaque    obj;
  1868.     
  1869.     obj = xv_create(owner, PANEL_BUTTON,
  1870.         XV_KEY_DATA, INSTANCE, ip,
  1871.         XV_HELP_DATA, "VideoEdit:editAddButton",
  1872.         XV_X, 16,
  1873.         XV_Y, 176,
  1874.         PANEL_LABEL_WIDTH, 60,
  1875.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1876.         PANEL_LABEL_STRING, "    Add",
  1877.         PANEL_NOTIFY_PROC, EditAdd,
  1878.         NULL);
  1879.     return obj;
  1880. }
  1881.  
  1882. /*
  1883.  * Create object `editModButton' in the specified instance.
  1884.  */
  1885. Xv_opaque
  1886. VideoEdit_editPopup_editModButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1887. {
  1888.     extern void        EditModify(Panel_item, Event *);
  1889.     Xv_opaque    obj;
  1890.     
  1891.     obj = xv_create(owner, PANEL_BUTTON,
  1892.         XV_KEY_DATA, INSTANCE, ip,
  1893.         XV_HELP_DATA, "VideoEdit:editModButton",
  1894.         XV_X, 112,
  1895.         XV_Y, 176,
  1896.         PANEL_LABEL_WIDTH, 60,
  1897.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1898.         PANEL_LABEL_STRING, "  Modify",
  1899.         PANEL_NOTIFY_PROC, EditModify,
  1900.         NULL);
  1901.     return obj;
  1902. }
  1903.  
  1904. /*
  1905.  * Create object `editDelButton' in the specified instance.
  1906.  */
  1907. Xv_opaque
  1908. VideoEdit_editPopup_editDelButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1909. {
  1910.     extern void        EditDelete(Panel_item, Event *);
  1911.     Xv_opaque    obj;
  1912.     
  1913.     obj = xv_create(owner, PANEL_BUTTON,
  1914.         XV_KEY_DATA, INSTANCE, ip,
  1915.         XV_HELP_DATA, "VideoEdit:editDelButton",
  1916.         XV_X, 216,
  1917.         XV_Y, 176,
  1918.         PANEL_LABEL_WIDTH, 60,
  1919.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1920.         PANEL_LABEL_STRING, "  Delete",
  1921.         PANEL_NOTIFY_PROC, EditDelete,
  1922.         NULL);
  1923.     return obj;
  1924. }
  1925.  
  1926. /*
  1927.  * Create object `editDelAllButton' in the specified instance.
  1928.  */
  1929. Xv_opaque
  1930. VideoEdit_editPopup_editDelAllButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1931. {
  1932.     extern void        EditDeleteAll(Panel_item, Event *);
  1933.     Xv_opaque    obj;
  1934.     
  1935.     obj = xv_create(owner, PANEL_BUTTON,
  1936.         XV_KEY_DATA, INSTANCE, ip,
  1937.         XV_HELP_DATA, "VideoEdit:editDelAllButton",
  1938.         XV_X, 312,
  1939.         XV_Y, 176,
  1940.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1941.         PANEL_LABEL_STRING, "Delete All...",
  1942.         PANEL_NOTIFY_PROC, EditDeleteAll,
  1943.         NULL);
  1944.     return obj;
  1945. }
  1946.  
  1947. /*
  1948.  * Create object `editPreviewButton' in the specified instance.
  1949.  */
  1950. Xv_opaque
  1951. VideoEdit_editPopup_editPreviewButton_create(VideoEdit_editPopup_objects *ip, Xv_opaque owner)
  1952. {
  1953.     Xv_opaque    obj;
  1954.     
  1955.     obj = xv_create(owner, PANEL_BUTTON,
  1956.         XV_KEY_DATA, INSTANCE, ip,
  1957.         XV_X, 420,
  1958.         XV_Y, 176,
  1959.         PANEL_LABEL_WIDTH, 60,
  1960.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  1961.         PANEL_LABEL_STRING, "Preview  ",
  1962.         PANEL_ITEM_MENU, VideoEdit_previewMenu_create((caddr_t) ip, ip->editPopup),
  1963.         NULL);
  1964.     return obj;
  1965. }
  1966.  
  1967. /*
  1968.  * Initialize an instance of object `previewPopup'.
  1969.  */
  1970. VideoEdit_previewPopup_objects *
  1971. VideoEdit_previewPopup_objects_initialize(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  1972. {
  1973.     if (!ip && !(ip = (VideoEdit_previewPopup_objects *) calloc(1, sizeof (VideoEdit_previewPopup_objects))))
  1974.         return (VideoEdit_previewPopup_objects *) NULL;
  1975.     if (!ip->previewPopup)
  1976.         ip->previewPopup = VideoEdit_previewPopup_previewPopup_create(ip, owner);
  1977.     if (!ip->previewControls)
  1978.         ip->previewControls = VideoEdit_previewPopup_previewControls_create(ip, ip->previewPopup);
  1979.     if (!ip->previewMsg)
  1980.         ip->previewMsg = VideoEdit_previewPopup_previewMsg_create(ip, ip->previewControls);
  1981.     if (!ip->previewSecMsg)
  1982.         ip->previewSecMsg = VideoEdit_previewPopup_previewSecMsg_create(ip, ip->previewControls);
  1983.     if (!ip->previewPlayFirstButton)
  1984.         ip->previewPlayFirstButton = VideoEdit_previewPopup_previewPlayFirstButton_create(ip, ip->previewControls);
  1985.     if (!ip->previewPlayFirstTxt)
  1986.         ip->previewPlayFirstTxt = VideoEdit_previewPopup_previewPlayFirstTxt_create(ip, ip->previewControls);
  1987.     if (!ip->previewPlayLastButton)
  1988.         ip->previewPlayLastButton = VideoEdit_previewPopup_previewPlayLastButton_create(ip, ip->previewControls);
  1989.     if (!ip->previewPlayLastTxt)
  1990.         ip->previewPlayLastTxt = VideoEdit_previewPopup_previewPlayLastTxt_create(ip, ip->previewControls);
  1991.     if (!ip->previewDoneButton)
  1992.         ip->previewDoneButton = VideoEdit_previewPopup_previewDoneButton_create(ip, ip->previewControls);
  1993.     return ip;
  1994. }
  1995.  
  1996. /*
  1997.  * Create object `previewPopup' in the specified instance.
  1998.  */
  1999. Xv_opaque
  2000. VideoEdit_previewPopup_previewPopup_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2001. {
  2002.     Xv_opaque    obj;
  2003.     
  2004.     obj = xv_create(owner, FRAME_CMD,
  2005.         XV_KEY_DATA, INSTANCE, ip,
  2006.         XV_WIDTH, 244,
  2007.         XV_HEIGHT, 172,
  2008.         XV_LABEL, "Video Preview",
  2009.         XV_SHOW, FALSE,
  2010.         FRAME_SHOW_FOOTER, FALSE,
  2011.         FRAME_SHOW_RESIZE_CORNER, FALSE,
  2012.         FRAME_CMD_PUSHPIN_IN, FALSE,
  2013.         NULL);
  2014.     xv_set(xv_get(obj, FRAME_CMD_PANEL), WIN_SHOW, FALSE, NULL);
  2015.     return obj;
  2016. }
  2017.  
  2018. /*
  2019.  * Create object `previewControls' in the specified instance.
  2020.  */
  2021. Xv_opaque
  2022. VideoEdit_previewPopup_previewControls_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2023. {
  2024.     Xv_opaque    obj;
  2025.     
  2026.     obj = xv_create(owner, PANEL,
  2027.         XV_KEY_DATA, INSTANCE, ip,
  2028.         XV_X, 0,
  2029.         XV_Y, 0,
  2030.         XV_WIDTH, WIN_EXTEND_TO_EDGE,
  2031.         XV_HEIGHT, WIN_EXTEND_TO_EDGE,
  2032.         WIN_BORDER, FALSE,
  2033.         NULL);
  2034.     gcm_initialize_colors(obj, "BG1", "Black");
  2035.     return obj;
  2036. }
  2037.  
  2038. /*
  2039.  * Create object `previewMsg' in the specified instance.
  2040.  */
  2041. Xv_opaque
  2042. VideoEdit_previewPopup_previewMsg_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2043. {
  2044.     Xv_opaque    obj;
  2045.     
  2046.     obj = xv_create(owner, PANEL_MESSAGE,
  2047.         XV_KEY_DATA, INSTANCE, ip,
  2048.         XV_X, 72,
  2049.         XV_Y, 16,
  2050.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2051.         PANEL_LABEL_STRING, "Play Part of Edit",
  2052.         PANEL_LABEL_BOLD, TRUE,
  2053.         NULL);
  2054.     return obj;
  2055. }
  2056.  
  2057. /*
  2058.  * Create object `previewSecMsg' in the specified instance.
  2059.  */
  2060. Xv_opaque
  2061. VideoEdit_previewPopup_previewSecMsg_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2062. {
  2063.     Xv_opaque    obj;
  2064.     
  2065.     obj = xv_create(owner, PANEL_MESSAGE,
  2066.         XV_KEY_DATA, INSTANCE, ip,
  2067.         XV_X, 88,
  2068.         XV_Y, 36,
  2069.         PANEL_LABEL_STRING, "(in seconds)",
  2070.         PANEL_LABEL_BOLD, FALSE,
  2071.         NULL);
  2072.     return obj;
  2073. }
  2074.  
  2075. /*
  2076.  * Create object `previewPlayFirstButton' in the specified instance.
  2077.  */
  2078. Xv_opaque
  2079. VideoEdit_previewPopup_previewPlayFirstButton_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2080. {
  2081.     extern void        PreviewStart(Panel_item, Event *);
  2082.     Xv_opaque    obj;
  2083.     
  2084.     obj = xv_create(owner, PANEL_BUTTON,
  2085.         XV_KEY_DATA, INSTANCE, ip,
  2086.         XV_HELP_DATA, "VideoEdit:previewPlayFirstButton",
  2087.         XV_X, 180,
  2088.         XV_Y, 64,
  2089.         PANEL_ITEM_COLOR, gcm_color_index("Midnight Blue"),
  2090.         PANEL_LABEL_STRING, "<- ",
  2091.         PANEL_NOTIFY_PROC, PreviewStart,
  2092.         NULL);
  2093.     return obj;
  2094. }
  2095.  
  2096. /*
  2097.  * Create object `previewPlayFirstTxt' in the specified instance.
  2098.  */
  2099. Xv_opaque
  2100. VideoEdit_previewPopup_previewPlayFirstTxt_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2101. {
  2102.     extern Panel_setting    PreviewStartTxt(Panel_item, Event *);
  2103.     Xv_opaque    obj;
  2104.     
  2105.     obj = xv_create(owner, PANEL_NUMERIC_TEXT,
  2106.         XV_KEY_DATA, INSTANCE, ip,
  2107.         XV_HELP_DATA, "VideoEdit:previewPlayFirstTxt",
  2108.         XV_X, 11,
  2109.         XV_Y, 68,
  2110.         PANEL_VALUE_DISPLAY_LENGTH, 3,
  2111.         PANEL_VALUE_STORED_LENGTH, 3,
  2112.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2113.         PANEL_LABEL_STRING, "Play first : ",
  2114.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  2115.         PANEL_MAX_VALUE, 999,
  2116.         PANEL_MIN_VALUE, 0,
  2117.         PANEL_VALUE, 0,
  2118.         PANEL_READ_ONLY, FALSE,
  2119.         PANEL_NOTIFY_PROC, PreviewStartTxt,
  2120.         NULL);
  2121.     return obj;
  2122. }
  2123.  
  2124. /*
  2125.  * Create object `previewPlayLastButton' in the specified instance.
  2126.  */
  2127. Xv_opaque
  2128. VideoEdit_previewPopup_previewPlayLastButton_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2129. {
  2130.     extern void        PreviewEnd(Panel_item, Event *);
  2131.     Xv_opaque    obj;
  2132.     
  2133.     obj = xv_create(owner, PANEL_BUTTON,
  2134.         XV_KEY_DATA, INSTANCE, ip,
  2135.         XV_HELP_DATA, "VideoEdit:previewPlayLastButton",
  2136.         XV_X, 180,
  2137.         XV_Y, 96,
  2138.         PANEL_ITEM_COLOR, gcm_color_index("Midnight Blue"),
  2139.         PANEL_LABEL_STRING, "<- ",
  2140.         PANEL_NOTIFY_PROC, PreviewEnd,
  2141.         NULL);
  2142.     return obj;
  2143. }
  2144.  
  2145. /*
  2146.  * Create object `previewPlayLastTxt' in the specified instance.
  2147.  */
  2148. Xv_opaque
  2149. VideoEdit_previewPopup_previewPlayLastTxt_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2150. {
  2151.     extern Panel_setting    PreviewEndTxt(Panel_item, Event *);
  2152.     Xv_opaque    obj;
  2153.     
  2154.     obj = xv_create(owner, PANEL_NUMERIC_TEXT,
  2155.         XV_KEY_DATA, INSTANCE, ip,
  2156.         XV_HELP_DATA, "VideoEdit:previewPlayLastTxt",
  2157.         XV_X, 11,
  2158.         XV_Y, 100,
  2159.         PANEL_VALUE_DISPLAY_LENGTH, 3,
  2160.         PANEL_VALUE_STORED_LENGTH, 3,
  2161.         PANEL_LABEL_STRING, "Play last  : ",
  2162.         PANEL_LAYOUT, PANEL_HORIZONTAL,
  2163.         PANEL_MAX_VALUE, 100,
  2164.         PANEL_MIN_VALUE, 0,
  2165.         PANEL_VALUE, 0,
  2166.         PANEL_READ_ONLY, FALSE,
  2167.         PANEL_NOTIFY_PROC, PreviewEndTxt,
  2168.         NULL);
  2169.     return obj;
  2170. }
  2171.  
  2172. /*
  2173.  * Create object `previewDoneButton' in the specified instance.
  2174.  */
  2175. Xv_opaque
  2176. VideoEdit_previewPopup_previewDoneButton_create(VideoEdit_previewPopup_objects *ip, Xv_opaque owner)
  2177. {
  2178.     extern void        PreviewDone(Panel_item, Event *);
  2179.     Xv_opaque    obj;
  2180.     
  2181.     obj = xv_create(owner, PANEL_BUTTON,
  2182.         XV_KEY_DATA, INSTANCE, ip,
  2183.         XV_HELP_DATA, "VideoEdit:previewDoneButton",
  2184.         XV_X, 68,
  2185.         XV_Y, 132,
  2186.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2187.         PANEL_LABEL_STRING, "Close window",
  2188.         PANEL_NOTIFY_PROC, PreviewDone,
  2189.         NULL);
  2190.     return obj;
  2191. }
  2192.  
  2193. /*
  2194.  * Initialize an instance of object `infoPopup'.
  2195.  */
  2196. VideoEdit_infoPopup_objects *
  2197. VideoEdit_infoPopup_objects_initialize(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2198. {
  2199.     if (!ip && !(ip = (VideoEdit_infoPopup_objects *) calloc(1, sizeof (VideoEdit_infoPopup_objects))))
  2200.         return (VideoEdit_infoPopup_objects *) NULL;
  2201.     if (!ip->infoPopup)
  2202.         ip->infoPopup = VideoEdit_infoPopup_infoPopup_create(ip, owner);
  2203.     if (!ip->infoControls)
  2204.         ip->infoControls = VideoEdit_infoPopup_infoControls_create(ip, ip->infoPopup);
  2205.     if (!ip->infoMsg5)
  2206.         ip->infoMsg5 = VideoEdit_infoPopup_infoMsg5_create(ip, ip->infoControls);
  2207.     if (!ip->infoMsg6)
  2208.         ip->infoMsg6 = VideoEdit_infoPopup_infoMsg6_create(ip, ip->infoControls);
  2209.     if (!ip->infoMsg7)
  2210.         ip->infoMsg7 = VideoEdit_infoPopup_infoMsg7_create(ip, ip->infoControls);
  2211.     if (!ip->infoMsg1)
  2212.         ip->infoMsg1 = VideoEdit_infoPopup_infoMsg1_create(ip, ip->infoControls);
  2213.     if (!ip->infoMsg3)
  2214.         ip->infoMsg3 = VideoEdit_infoPopup_infoMsg3_create(ip, ip->infoControls);
  2215.     if (!ip->infoMsg2)
  2216.         ip->infoMsg2 = VideoEdit_infoPopup_infoMsg2_create(ip, ip->infoControls);
  2217.     if (!ip->infoMsg4)
  2218.         ip->infoMsg4 = VideoEdit_infoPopup_infoMsg4_create(ip, ip->infoControls);
  2219.     if (!ip->infoMsg8)
  2220.         ip->infoMsg8 = VideoEdit_infoPopup_infoMsg8_create(ip, ip->infoControls);
  2221.     if (!ip->infoOkButton)
  2222.         ip->infoOkButton = VideoEdit_infoPopup_infoOkButton_create(ip, ip->infoControls);
  2223.     return ip;
  2224. }
  2225.  
  2226. /*
  2227.  * Create object `infoPopup' in the specified instance.
  2228.  */
  2229. Xv_opaque
  2230. VideoEdit_infoPopup_infoPopup_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2231. {
  2232.     Xv_opaque    obj;
  2233.     
  2234.     obj = xv_create(owner, FRAME_CMD,
  2235.         XV_KEY_DATA, INSTANCE, ip,
  2236.         XV_WIDTH, 501,
  2237.         XV_HEIGHT, 291,
  2238.         XV_LABEL, "Video Info",
  2239.         XV_SHOW, FALSE,
  2240.         FRAME_SHOW_FOOTER, FALSE,
  2241.         FRAME_SHOW_RESIZE_CORNER, FALSE,
  2242.         FRAME_CMD_PUSHPIN_IN, FALSE,
  2243.         NULL);
  2244.     xv_set(xv_get(obj, FRAME_CMD_PANEL), WIN_SHOW, FALSE, NULL);
  2245.     return obj;
  2246. }
  2247.  
  2248. /*
  2249.  * Create object `infoControls' in the specified instance.
  2250.  */
  2251. Xv_opaque
  2252. VideoEdit_infoPopup_infoControls_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2253. {
  2254.     Xv_opaque    obj;
  2255.     
  2256.     obj = xv_create(owner, PANEL,
  2257.         XV_KEY_DATA, INSTANCE, ip,
  2258.         XV_X, 0,
  2259.         XV_Y, 0,
  2260.         XV_WIDTH, WIN_EXTEND_TO_EDGE,
  2261.         XV_HEIGHT, WIN_EXTEND_TO_EDGE,
  2262.         WIN_BORDER, FALSE,
  2263.         NULL);
  2264.     gcm_initialize_colors(obj, "BG1", "BG1");
  2265.     return obj;
  2266. }
  2267.  
  2268. /*
  2269.  * Create object `infoMsg5' in the specified instance.
  2270.  */
  2271. Xv_opaque
  2272. VideoEdit_infoPopup_infoMsg5_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2273. {
  2274.     Xv_opaque    obj;
  2275.     
  2276.     obj = xv_create(owner, PANEL_MESSAGE,
  2277.         XV_KEY_DATA, INSTANCE, ip,
  2278.         XV_X, 170,
  2279.         XV_Y, 16,
  2280.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2281.         PANEL_LABEL_STRING, "Video Edit   Version 1.12",
  2282.         PANEL_LABEL_BOLD, TRUE,
  2283.         NULL);
  2284.     return obj;
  2285. }
  2286.  
  2287. /*
  2288.  * Create object `infoMsg6' in the specified instance.
  2289.  */
  2290. Xv_opaque
  2291. VideoEdit_infoPopup_infoMsg6_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2292. {
  2293.     Xv_opaque    obj;
  2294.     
  2295.     obj = xv_create(owner, PANEL_MESSAGE,
  2296.         XV_KEY_DATA, INSTANCE, ip,
  2297.         XV_X, 49,
  2298.         XV_Y, 48,
  2299.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2300.         PANEL_LABEL_STRING, "An application for annotating video from videodisc (or videotape)",
  2301.         PANEL_LABEL_BOLD, FALSE,
  2302.         NULL);
  2303.     return obj;
  2304. }
  2305.  
  2306. /*
  2307.  * Create object `infoMsg7' in the specified instance.
  2308.  */
  2309. Xv_opaque
  2310. VideoEdit_infoPopup_infoMsg7_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2311. {
  2312.     Xv_opaque    obj;
  2313.     
  2314.     obj = xv_create(owner, PANEL_MESSAGE,
  2315.         XV_KEY_DATA, INSTANCE, ip,
  2316.         XV_X, 32,
  2317.         XV_Y, 68,
  2318.         PANEL_LABEL_STRING, "designed for use with the MAEstro Multimedia Authoring Environment",
  2319.         PANEL_LABEL_BOLD, FALSE,
  2320.         NULL);
  2321.     return obj;
  2322. }
  2323.  
  2324. /*
  2325.  * Create object `infoMsg1' in the specified instance.
  2326.  */
  2327. Xv_opaque
  2328. VideoEdit_infoPopup_infoMsg1_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2329. {
  2330.     Xv_opaque    obj;
  2331.     
  2332.     obj = xv_create(owner, PANEL_MESSAGE,
  2333.         XV_KEY_DATA, INSTANCE, ip,
  2334.         XV_X, 192,
  2335.         XV_Y, 112,
  2336.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2337.         PANEL_LABEL_STRING, "by Wee-Lee Lim",
  2338.         PANEL_LABEL_BOLD, TRUE,
  2339.         NULL);
  2340.     return obj;
  2341. }
  2342.  
  2343. /*
  2344.  * Create object `infoMsg3' in the specified instance.
  2345.  */
  2346. Xv_opaque
  2347. VideoEdit_infoPopup_infoMsg3_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2348. {
  2349.     Xv_opaque    obj;
  2350.     
  2351.     obj = xv_create(owner, PANEL_MESSAGE,
  2352.         XV_KEY_DATA, INSTANCE, ip,
  2353.         XV_X, 20,
  2354.         XV_Y, 152,
  2355.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2356.         PANEL_LABEL_STRING, "Copyright (C) 1990, 1991, 1992 Libraries and Information Resources (L&IR)",
  2357.         PANEL_LABEL_BOLD, FALSE,
  2358.         NULL);
  2359.     return obj;
  2360. }
  2361.  
  2362. /*
  2363.  * Create object `infoMsg2' in the specified instance.
  2364.  */
  2365. Xv_opaque
  2366. VideoEdit_infoPopup_infoMsg2_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2367. {
  2368.     Xv_opaque    obj;
  2369.     
  2370.     obj = xv_create(owner, PANEL_MESSAGE,
  2371.         XV_KEY_DATA, INSTANCE, ip,
  2372.         XV_X, 187,
  2373.         XV_Y, 176,
  2374.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2375.         PANEL_LABEL_STRING, " Stanford University",
  2376.         PANEL_LABEL_BOLD, FALSE,
  2377.         NULL);
  2378.     return obj;
  2379. }
  2380.  
  2381. /*
  2382.  * Create object `infoMsg4' in the specified instance.
  2383.  */
  2384. Xv_opaque
  2385. VideoEdit_infoPopup_infoMsg4_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2386. {
  2387.     Xv_opaque    obj;
  2388.     
  2389.     obj = xv_create(owner, PANEL_MESSAGE,
  2390.         XV_KEY_DATA, INSTANCE, ip,
  2391.         XV_X, 192,
  2392.         XV_Y, 196,
  2393.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2394.         PANEL_LABEL_STRING, "Stanford, California",
  2395.         PANEL_LABEL_BOLD, FALSE,
  2396.         NULL);
  2397.     return obj;
  2398. }
  2399.  
  2400. /*
  2401.  * Create object `infoMsg8' in the specified instance.
  2402.  */
  2403. Xv_opaque
  2404. VideoEdit_infoPopup_infoMsg8_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2405. {
  2406.     Xv_opaque    obj;
  2407.     
  2408.     obj = xv_create(owner, PANEL_MESSAGE,
  2409.         XV_KEY_DATA, INSTANCE, ip,
  2410.         XV_X, 94,
  2411.         XV_Y, 232,
  2412.         PANEL_LABEL_STRING, "For more info, contact maestro@sioux.stanford.edu",
  2413.         PANEL_LABEL_BOLD, FALSE,
  2414.         NULL);
  2415.     return obj;
  2416. }
  2417.  
  2418. /*
  2419.  * Create object `infoOkButton' in the specified instance.
  2420.  */
  2421. Xv_opaque
  2422. VideoEdit_infoPopup_infoOkButton_create(VideoEdit_infoPopup_objects *ip, Xv_opaque owner)
  2423. {
  2424.     extern void        InfoDone(Panel_item, Event *);
  2425.     Xv_opaque    obj;
  2426.     
  2427.     obj = xv_create(owner, PANEL_BUTTON,
  2428.         XV_KEY_DATA, INSTANCE, ip,
  2429.         XV_HELP_DATA, "VideoEdit:infoOkButton",
  2430.         XV_X, 230,
  2431.         XV_Y, 264,
  2432.         PANEL_ITEM_COLOR, gcm_color_index("Black"),
  2433.         PANEL_LABEL_STRING, "OK",
  2434.         PANEL_NOTIFY_PROC, InfoDone,
  2435.         NULL);
  2436.     return obj;
  2437. }
  2438.  
  2439.